In this blog we will cover technologies a beginner web developer can learn on the API development and also explore some frameworks that support rapid extensive backend development support with feature rich API's. This is part-2 of two part blog, the first blog covered the frontend. If you missed that feel free to check it out- Web Development Beginner's Learning Roadmap- Frontend
Backend development is quite different than frontend, while writing code on the client-side we do get instant feedback as to where we are headed with the results in front of our eyes, but developing backend requires some basic understanding of software architecture.
UI of your application gets all its data such user information, login details, application data, etc from a database which stores all this information in various tables. But, the data is not directly fetched from the databse, we need a middleware called API or Application Programming Interface.
API's connect to the database and abstract away the business logic to perform CRUD operations on it. API gets a request of the type GET/PUT/POST/DELETE (which are HTTP verbs for Fetch/Update/Create/Delete) and respond back with the data.
- JavaScipt is a versatile language, and apart from being used on the frontend it can also be used to write API's on the backend.
- Python is yet another language which has become popular for API development. It has some great backend frameworks which can be used to build production ready APIs.
- C# was designed by Microsoft. It is high-level programming language and it supports a wide arary of development tools. The .NET framework using C# can be used to build anything ranging from UI, API, IoT apps, Windows application, CLIs etc. It is a multipupose language and highly used within banking software applications.
- Java is yet another popular language and had the number one spot among the programming langues from 2004 to 2018. The Spring framework developed in Java is quite popular for API dev, Cloud applications etc.
Here is the list of popular API frameworks/libraries which you can learn as a backend web developer:-
- https://www.youtube.com/watch?v=Oe421EPjeBE (Video Tutorial)
Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. Django REST Framework is a wrapper over default Django Framework, basically used to create APIs of various kinds. It documentation and community support is quite strong. If you are a Python guy then you can surely check it out.
ASP .NET Core
ASP.NET Core is a free, open-source, and cross-platform framework for building cloud-based applications, such as web apps, IoT apps, and mobile backends. It is designed to run on the cloud as well as on-premises. It supports creating web APIs using controllers or using minimal APIs. Controllers in a web API are classes that derive from ControllerBase. All you need it Visual Studio as .NET Core comes preinstalled with it. This framewok is usually preferred by veterans already having experience with C# and may not be a good starting choice for a beginner backend web developer.
- https://www.youtube.com/watch?v=5YB49OEmbbE (Video Tutorial)
The Spring Framework is an application framework and inversion of control container for the Java platform. The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform. Spring Boot separates the boiler-plate code and configuration settings in an application to highlight focus on REST API development. All the JAVA folks will tend to love Spring Boot as it is easy to implement APIs in.
- https://www.youtube.com/watch?v=9SGDpanrc8U (Video Tutorial)
I hope you found this blog informative. The resources mentioned above are sufficient enough for you to get started in API development, but you can explore more. Thank you for reading.