title |
---|
Readme |
- Compared to the express project, the angular project is way more modular and organized. Each module contains components that help in organizing the code in a more scalable manner. It gives an opportunity for the front end to be more reactive and engaging to the user. Angular also provides services that are used to handle data. They can be injected into the parts of the code where they are needed. Angular also provides a router that can be used to load the different components to display different views.
- The Express server provides the APIs to the data store. It serves the HTML pages and templates that are rendered on the server.
- The backend uses a MongoDB database in the backend because it has the ability to scale well and query quick. The document storage mechanism aligns very well with JSON formatting which makes it a great tool to use with web applications that use JSON like environment to store data.
- JSON is a very lightweight format used to store data and bridge the gap between the frontend and backend parts of web applications. JavaScript on the other hand is a programming language that can be used to create interactive effects within web browsers. It can be used to manipulate web pages, perform asynchronous network tasks, and respond to user interaction.
- JSON can be used both on the client and server side which makes it a common format for exchanging data across different layers of a web application. It also acts as a decoupled format (it has the ability to make frontend developers work independently of backend developers). Both sides agree on the JSON structure and can work in parallel without needing to worry about how the other side implements its logic.
- Most common HTTP methods include GET, POST, PUT, and DELETE. The endpoints are how the client can communicate with the server using the HTTP methods. The security in this application consisted of authenticating a user and handing out a JWT token so that they could access some of the more restricted endpoints.
- This project solidified my understanding of routers and endpoints (which I was lacking a bit previously). All my previous experience involved backends, so it was nice to learn a frontend framework like Angular. I plan to use this in my future projects.