1.4. About Agenda
Working hours 9:00 - 17:00
Lunch break 13:15 - 14:00
10 min break every 1.5 hour
1.4.1. Day 1
Kwestie organizacyjne: przedstawienie się, przerwy, spreadsheet
Przygotowanie środowiska do pracy: github, git, python, doctest
Zadania testowe ewaluujące umiejętności użytkownika
Live Coding rozwiązań zadań i demonstracja funkcji IDE, tj. debugging, praca z VCS, refactoring, dokumentacja i typy, sygnatury funkcji
Type Annotation
About: Fast API
About: Install and Setup
About: FastAPI Architecture
About: Basic concepts
HTTP: Protocol
HTTP: URL vs. URI
HTTP: Methods
HTTP: Statuses
HTTP: Headers
HTTP: MIME types
HTTP: API Versioning
JSON: load, dump
JSON: encoder, decoder
JSON: object serialization
1.4.2. Day 2
Request: Path parameters
Request: API Doc - swagger / redoc
Request: Query parameters
Request: Request body
Pydantic: Schema
Pydantic: BaseModel
Pydantic: Validation
Response: Handling exceptions
Response: Return response
Response: Define response model
Database: SQLAlchemy database connections
Database: Models and tables
Database: Insert data to database
Database: Select data from database
Database: Delete
Database: Update
Database: Relationships: o2o, o2m, m2m
1.4.3. Day 3
Async: About
Async: Coroutine, Task
Async: Run, Wait, Wait for, Gather
Router: API Router
Router: API Router with parameters
Use Case: User and Password - Create user
Use Case: User and Password - Hash user password
Use Case: User and Password - Show single user
Use Case: User and Password - Define docs tags
Use Case: JWT Authentication - Create Login route
Use Case: JWT Authentication - Login and verify password
Use Case: JWT Authentication - Return JSON Web Token (JWT) access token
Use Case: JWT Authentication - Routes behind authentication
DevOps: Docker
DevOps: Docker Compose
DevOps: Debugging
DevOps: Tests
DevOps: CI/CD
DevOps: Deployment