Módulo 0 · Lição F06 (0/6 lições concluídas) Tempo estimado: 2h · Liga a trilha Fundamentos diretamente aos Módulos 1 a 9 do MySuperStore.
Em uma frase: Ler um repositório grande é chegar a um restaurante novo: primeiro a planta, depois o cardápio, depois seguir um pedido da mesa à cozinha.Pergunta guia: Diante de um repositório com milhares de arquivos, por onde começo e como encontro o que preciso sem ler tudo?
Passo 1 · Antes de ler: preveja Tente responder antes de abrir o gabaritoErrar uma previsão mostra exatamente onde está a lacuna. Chute mentalmente ou no papel antes de revelar a resposta do professor.
1. Você abre um projeto real com milhares de arquivos. Qual é a primeira coisa a ler?
Ver resposta do professor2. Para entender como um pedido é criado no MySuperStore, quantos arquivos você precisa ler: centenas ou meia dúzia?
Ver resposta do professor1. O método em 5 passos ('da porta para dentro') 1) A planta: leia README.md e pastas da raiz (backend/, frontend/, docker-compose.yml).
2) Como roda: veja Dockerfile, docker-compose.yml e requirements/.
3) Os departamentos: abra settings/base.py e veja LOCAL_APPS (no MySuperStore são 9 apps: users, sellers, catalog, carts, orders, payments, assistant, admin_api, crm).
4) O cardápio: abra config/urls.py e os urls.py de cada app.
5) Siga um pedido de ponta a ponta: rota → ViewSet → Serializer → Model → Teste.
No mini-loja (F03–F05) No MySuperStore (real) O que mudou na escala 1 app (catalogo) 9 apps em apps/ Cada assunto (pedidos, pagamentos, lojas) isolado settings.py único settings/base.py + dev.py + prod.py Separação de ambiente de desenvolvimento e produção Sem login nas rotas Permissões e filtro por usuário Só o dono do pedido (ou lojista envolvido) acessa SQLite local PostgreSQL + Redis + Celery + Caddy Concorrência real, tarefas assíncronas e HTTPS
Quebre de propósito Tentar ler um repositório grande em ordem alfabéticaExperimento: Abrir a pasta backend/ e tentar ler cada arquivo de cima para baixo sem seguir uma rota.
O que falha: Em 20 minutos você se perde em arquivos utilitários, configurações e migrações antigas sem saber como um pedido funciona.
Por que a regra existe: Escolha um fio (uma funcionalidade ou rota) e puxe: urls.py → views.py → serializers.py → models.py → tests.py.
Armadilhas comuns (errado × certo) Errado Certo Por quê Tentar memorizar todos os arquivos antes de começar Usar busca (Ctrl+Shift+F / rg) a partir da rota Projetos reais mudam; saber encontrar pelo fluxo vale mais que decorar caminhos.
Mão na massa
Exercício com pista e gabarito Usando o método de 5 passos, se você precisa descobrir onde o MySuperStore calcula a comissão do lojista, por qual arquivo você começa a busca?
Ver pista Pense no app de pedidos (orders) e nos modelos/serializers.
Ver gabarito Comece por LOCAL_APPS em config/settings/base.py, vá para apps/orders/models.py (SubOrder) e apps/orders/serializers.py (OrderCreateSerializer).
Quiz da lição Quiz com explicação de cada erroQual é a sequência recomendada pelo método 'da porta para dentro' para seguir uma funcionalidade em um projeto Django? migrations → settings → admin → views urls.py → views.py → serializers.py → models.py Dockerfile → .gitignore → manage.py Ler todos os arquivos em ordem alfabética
Revisão espaçada · 1, 3 e 7 dias Fichas de revisão (clique para virar)Frente (pergunta) Quais são os 5 passos para ler qualquer repositório?
Frente (pergunta) Por que testes são ótimos para leitura de código?
Se você só lembrar de 3 coisas desta lição: Nunca leia um projeto grande de A a Z: olhe a planta e siga um fio de requisição. O MySuperStore usa exatamente a mesma estrutura de F03–F05, escalada para 9 apps. Com a trilha Fundamentos concluída, você está pronto para o Módulo 1 (negócio, números e código em produção). Apoio rápido · 44 termos Glossário de Fundamentos (A–Z)Abrir glossário (44 termos) F05 — Provar que funciona: testes automáticos, Git e regra dos segredosPróxima: A01 — O negócio do marketplace: de onde vem o dinheiro e quanto sobra