# Python: Web Apps — Estudo _Fonte: project-based-learning + Flask Mega-Tutorial_ --- ## šŸ“š Recursos Estudados | Tutorial | Stack | Cobertura | |----------|-------|-----------| | [Flask Mega-Tutorial](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world) | Flask, SQLAlchemy, Docker | 23 capĆ­tulos completos | | [Django Girls Tutorial](https://tutorial.djangogirls.org/en/) | Django | Blog completo | | [Test-Driven Development](https://testdriven.io/) | Flask, Docker, React | Microservices | | [Flask + RethinkDB Todo](https://realpython.com/blog/python/rethink-flask-a-simple-todo-list-powered-by-flask-and-rethinkdb/) | Flask + RethinkDB | Tempo real | | [Django REST API](https://codeburst.io/create-a-django-api-in-under-20-minutes-2a082a60f6f3) | Django REST Framework | API em 20 min | | [Microservices with Docker](https://testdriven.io/) | Flask, Docker, React | Arquitetura moderna | ## šŸŽÆ AplicaƧƵes para Mundo Telecom 1. **API REST** para o sistema de editais (em vez de scripts soltos) 2. **Dashboard interno** com Flask + templates ou React frontend 3. **Autenticação** JWT/OAuth para os serviƧos internos 4. **MicroserviƧos**: cada serviƧo em container separado (jĆ” temos Docker!) ## šŸ“ Conceitos Aprendidos ### Flask (Mega-Tutorial — 23 capĆ­tulos) | # | CapĆ­tulo | Conceito Chave | |---|----------|----------------| | 1 | Hello World | Estrutura bĆ”sica, venv, debug mode | | 2 | Templates | Jinja2, heranƧa, blocos | | 3 | Web Forms | WTForms, validação, CSRF | | 4 | Database | SQLAlchemy, migrations (Alembic) | | 5 | User Logins | Flask-Login, hash de senha, sessĆ£o | | 6 | Profile & Avatars | Gravatar, upload de foto | | 7 | Error Handling | Logging, pĆ”ginas de erro customizadas | | 8 | Followers | Auto-relacionamento muitos-para-muitos | | 9 | Pagination | Paginação de queries | | 10 | Email | Flask-Mail, tasks assĆ­ncronas | | 11 | Facelift | Bootstrap, CSS | | 12 | Dates/Times | Timezone-aware, Moment.js | | 13 | I18n/L10n | Flask-Babel, traduƧƵes | | 14 | Ajax | RequisiƧƵes assĆ­ncronas, jQuery | | 15 | App Structure | Blueprints, fĆ”brica de apps | | 16 | Full-Text Search | Whoosh/Elasticsearch | | 17-19 | Deployment | Linux, Heroku, Docker | | 20 | JavaScript | Integração frontend/backend | | 21 | Notifications | Server-Sent Events | | 22 | Background Jobs | Celery, RQ (Redis Queue) | | 23 | APIs | RESTful, autenticação por token | ### Django vs Flask | Aspecto | Flask | Django | |---------|-------|--------| | Complexidade | Leve, minimalista | Batteries-included | | ORM | SQLAlchemy (separado) | Django ORM (integrado) | | Admin | Precisa construir | JĆ” vem pronto | | API | Flask-RESTful | Django REST Framework | | Ideal para | MicroserviƧos, APIs | Apps grandes, monolitos | ### Microservices com Docker - Cada serviƧo = container independente - Docker Compose para orquestração local - Testes: pytest + Docker (ambiente isolado) - CI/CD: GitHub Actions + Docker Hub ## āœ… Progresso - [x] Flask Mega-Tutorial (estudado) - [ ] Django Girls Tutorial - [ ] Django REST API - [ ] Microservices com Docker - [ ] Todo List TDD (Obey the Testing Goat)