Week 5: Business Logic Layer - Controllers
Content:
- MVC design pattern and separation of concerns.
- Definition and role of controllers.
- Workflow of request and response in web applications.
- CRUD operations.
- Routes and controllers.
Things to Know:
- Flask basics:
- Instantiating a Flask app.
- Basic routing.
- Python decorators.
- Rendering templates using Jinja.
- Redirection and error handling.
- Flask-SQLAlchemy:
- Instantiating a database object.
- Database configuration.
- Creating models and establishing relationships.
Week 6: APIs and REST
Content:
- Overview of APIs.
- Key principles of API design.
- REST architecture and its constraints.
- RESTful APIs.
- Introduction to OpenAPI and specifications.
- The relation between APIs and CRUD operations.
Things to Know:
- Flask-Restful:
- Resource routing and endpoint mapping.
- Argument parsing with
reqparse. - Output formatting using
marshal_withand output fields.
- API documentation tools: Swagger UI, Insomnia.
- Testing APIs: Using cURL and Postman.
Week 7: Backend
Content:
- Memory hierarchy and storage mechanisms.
- Computer organization and storage solutions.
- Data and database search methods.
- Web application validations and security measures.
Things to Know:
- Algorithmic complexities.
- Double data rate (DDR) , DRAM, Clock speed, minimum encoding
- Examples and problems on algorithmic complexities.
- Redundancy and Replication
Week 8: Application Frontend
Content:
- Introduction to frontend development.
- AJAX and asynchronous data updates.
- WebAssembly (WASM).
- Security implications in frontend development.
Things to Know:
- DOM concepts and manipulations.
- Client-side operations and computation.
- Basic JavaScript knowledge.
- Differnce between frontend and backend validation