trilha

Fundamentos de Programação4 minmoc

MOC Fundamentos de Programação

Fundamentos de Programação

Plano de 12 semanas para solidificar a base. ~8h/semana — se tiver 4h, vire 24 semanas; se tiver 15h, dá para fazer em 7-8. 57 notas de conceito em 3 blocos.

Premissas do plano
  • Você já sabe escrever código, mas sente buracos quando o assunto sai do "arroz com feijão".
  • Você quer profundidade, não amplitude. Nada de aprender 3 frameworks novos.
  • O objetivo é sair capaz de resolver problema que você nunca viu antes.

Antes de começar

Linguagem escolhida: Go — e não trocar por 12 semanas Data de início: preencher

Blocos

Estrutura das pastas

Cada semana é uma pasta, e a nota da semana é o hub — ela mora dentro da própria pasta, junto das notas de conceito daquela semana:

01 - Fundamentos Duros/
  01 - MOC Fundamentos Duros.md
  Semana 02 - Estruturas de Dados I/
    Semana 02 - Estruturas de Dados I.md   <- hub: objetivo, tópicos, entregável
    Notação Big-O.md
    Array.md
    Lista Ligada.md
    ...
Wikilink não depende de caminho

[[6. Hash Map]] resolve de qualquer lugar do vault — mover nota entre pastas nunca quebra link. Reorganize a estrutura à vontade.

Cronograma

Semana Tema Entregável
1 Diagnóstico e o que acontece por baixo 20 exercícios + 1 página sobre a = b
2 Estruturas de dados I Lista ligada, pilha e hash map do zero
3 Estruturas de dados II e recursão Árvore de busca + 3 travessias
4 Algoritmos essenciais 20 problemas easy com complexidade anotada
5 POO de verdade Reescrever uma classe feia sua
6 Código limpo e refatoração Refatorar arquivo de 200+ linhas em commits pequenos
7 Testes automatizados Cobrir com testes o código da semana 6
8 Git além do básico 5 conflitos provocados + git bisect
9 Banco de dados e SQL Banco com 6+ tabelas e 15 queries
10 Rede e HTTP Documentar uma API + 10 chamadas no cURL
11-12 Semana 11-12 - Projeto Integrador API do zero com tudo junto

Progresso

Marque aqui ao fechar cada semana — funciona sem nenhum plugin:

  • Semana 1
  • Semana 2
  • Semana 3
  • Semana 4 · checkpoint: reler Autoavaliação
  • Semana 5
  • Semana 6
  • Semana 7
  • Semana 8 · checkpoint: reler Autoavaliação
  • Semana 9
  • Semana 10
  • Semana 11
  • Semana 12 · checkpoint final: Autoavaliação inteira

Acompanhamento com Dataview

Com o plugin Dataview instalado (Configurações → Plugins da comunidade), as queries abaixo funcionam. Sem ele, use o painel de tags e a busca por status:.

Como usar

  1. Abra a nota da semana, defina inicio e mude status para em-andamento.
  2. Em cada nota de conceito, responda as perguntas-guia com suas palavras — copiar da documentação não conta. Se você não consegue responder, é um buraco identificado.
  3. Mude status para estudando e depois dominado. dominado significa "explico em voz alta sem consultar", não "li".
  4. Preencha dificuldade (1-5) honestamente — é o que te diz o que revisar primeiro.
  5. Preencha revisao com a data da próxima revisão espaçada.
  6. Ligue conceitos novos em Relacionado — é o que faz o grafo virar mapa mental.
  7. Na sexta, 30 minutos de revisão. Sem isso você reaprende tudo no mês seguinte.
O entregável é o que conta

Semana sem artefato não aconteceu. Cada nota de semana tem o entregável em checklist — é o único critério objetivo de que a semana fechou.

Relação com o resto do vault

Este plano cruza com 00 - MOC System Design em vários pontos. Onde o conceito já existe lá, aqui ele aparece como wikilink marcado (ref) em vez de nota duplicada:

Ordem sugerida: este plano primeiro, System Design depois. Design de sistema sem base de estrutura de dados e banco vira repetição de jargão.


Plano de 12 semanas · base antes de amplitude

Buscar

Busca por título, seção e texto das notas