Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Fluent API Design - A Crash Course
Rating: 3.9 out of 5(138 ratings)
1,329 students

Fluent API Design - A Crash Course

A crash course on a software architecture approach for creating readable, intuitive, and easy-to-understand code.
Created byRiaan Nel
Last updated 4/2018
English

What you'll learn

  • Understand why API's should be designed well.
  • Understand the benefits of using Fluent API's.
  • Learn how to design fluent API's.
  • Learn how to write intuitive, easy-to-understand code.
  • Learn how to structure code for excellent readability.
  • Add new skills to your programming toolbox.

Coding Exercises

This course includes our updated coding exercises so you can practice your skills as you learn.

See a demo
Image of coding exercise example

Course content

3 sections17 lectures1h 17m total length
  • What is an API?2:40

    In this lecture, we'll learn what API's are, and what some of the things are that make an API good.

  • What is a Fluent API?3:26

    In this lecture, we'll learn what fluent API's are and what they look like.

  • Using a Fluent API in Practice1:36

    In this lecture, we'll briefly discuss the refactoring exercise that we'll work through in the next lecture.

  • Setting up Java and IntelliJ IDEA4:55

    This lecture will help you to configure a Java development environment that you can use to work through the examples in this course.

  • Refactoring Test Cases5:29

    In this lecture, we'll refactor some JUnit test cases to use Hamcrest - a fluent API.

Requirements

  • You should be familiar with an object-oriented programming language, such as Java or C#.
  • You should have an understanding of object-oriented programming principles.
  • The code examples are in Java - while they aren't mandatory to work through, it will be beneficial if you have a Java development environment (with Maven) configured.

Description

Fluent API Design - Write Good, Clean, Readable Code

Have you ever looked at code that you needed to use, and thought that it could just be so much easier, better, and cleaner?  Have you ever wondered how tools like the Java™ DSL in Apache Camel or the streaming API's in Java 8 work under the covers?  How you can architect your code to clearly express it's intent without the need for extensive documentation?  If so, this course is for you!

Throughout the course, we'll look at what fluent API's are and how we can design them.  We'll look at the benefits of fluent API's, and we'll see real-world examples in practice.  We'll also work through examples where we implement our own fluent API's.  Our examples will be in Java, but the concepts are equally relevant to other object-oriented languages, like C#.

This course is intended to help you become a better programmer, by teaching you how to write code that is incredibly easy to understand.  After all, as programmers, we spend a significant amount of time reading existing code rather than writing new code.  Therefore, the ability to write code that is easy to read and easy to understand is a very important skill for programmers to have.  In this course, I want to help you develop that skill.

Some Review Feedback

"I thought the beginning of the course was quite slow and too much verbiage for the given slides. But once you got into going through code methodologies and showing coding examples, I enjoyed flow very much. I liked the use of video so I could pause in places to analyze the code."

"For a short course such as this, you get a lot of information to improve your skills. I enjoyed this course and learned some new and useful techniques."

"This course covers a familiar thought among developers; striving for well-written code, which is 1) easy to read/understand and then 2) easy to amend and build upon with subsequent revisions; essentially demonstrating the benefits of good API design overall. I also appreciated the inclusion of the code examples, which demonstrates the advantages of Fluent API Design in a practical way."

"I learned about fluent API in a short time. The characteristics of the pattern Builder and reason important for implementing this pattern our own code. Thanks!"

"Great topic, great course, great content."

"Very well explained material."

This course includes the option of a 30-day, no-questions-asked refund.

Who this course is for:

  • Junior- to intermediate programmers who use an object-oriented language, such as Java or C#.
  • Anyone who wants to learn how to design fluent API's.
  • Anyone who wants to change the way in which they think about designing API's.
  • Anyone who wants to learn how to write intuitive, easy-to-understand code.