So How Do I Actually Build This?
What we've covered in this part has been mostly theoretical. You learned about endpoint design, filtering, searching, sorting, pagination, and versioning. But how would you build one of these APIs yourself? 🤔
The process of building an API depends on the programming language or tool you use. We've covered best practices on how to build one once you dive into a language. Here are some popular tools and frameworks that developers use:
Spring is a web framework that uses Java, a very popular language. It’s used by websites like Wix, TicketMaster, and BillGuard. It has a lot of related tools that boost its performance and let you easily scale your business, but the learning curve could be steep, especially if you don’t know Java.
Django uses Python for web development, and it's used by some big names such as Google, YouTube, and Instagram. Django Rest Framework is easy to use when building your REST APIs with Django. It has a steeper learning curve for beginners, but comes with great built-in features like authentication and messaging.
Flask uses Python for web and REST API development. It's a minimalist framework, and is simple to learn and use. Flask comes with fewer built-in features than Django, but enables developers to have more say in the extra tools they use.
Ruby on Rails
Ruby on Rails is built into Ruby and is a popular framework among many developers. It's considered a "magic behind the curtains" framework because it hides a lot of complexity. This does help beginners get started with web development more easily. There are many third-party plugins (called Ruby gems) available to use, and the Rails developer community is very large, with tons of online tutorials. The learning curve of Rails becomes really steep once you dive deeper into the framework (to understand the magic behind it).
AWS API Gateway
AWS API Gateway and AWS Lambda is a way to create and use REST APIs using mostly a user interface (so less code!). It lets you easily integrate your website with all of AWS services, and is easy to scale and manage more requests with their infrastructure. You have to pay per request users make to your servers, but you get the first million free!
The tool you choose should ultimately depend on the needs of your application. Make sure to do the appropriate research on the available frameworks and libraries so that you pick the right one for your needs. Once you build your API and deploy it to the web, you can use Postman in the same way we have throughout this course to test it out!
There are plenty of tools and frameworks you can use to put these concepts into practice.
Make sure to do your research when picking which API tool is best for you.