Menu
CoddyTech
Trilha de aprendizado

Roadmap de desenvolvedor C++

O que aprender, e em que ordem, para uma vaga de C++ em jogos, sistemas, trading ou software embarcado: a linguagem descendo até a memória, a semântica de movimento e os templates, a linha de comando, Git e SQL, depois as estruturas de dados e algoritmos em que as entrevistas de C++ se apoiam, e código que um time consegue manter. Grátis, prático e no seu navegador, sem nada para compilar na sua máquina.

516,341+ codders inscritos nestes cursos

614 lições593 desafios2,884 perguntas de quiz

O roadmap de desenvolvedor C++, passo a passo

17 cursos6 seções614 lições593 desafios2,884 perguntas de quiz

Cada passo é feito de cursos que já existem na Coddy, e cada botão Iniciar os abre em C++. Faça os passos na ordem ou comece pelo que está faltando; o progresso é salvo por curso.

  1. 1
    Começar esta etapaIniciarTrês seções. Fundamentos cobre tipos, operadores, controle de fluxo, funções, arrays e strings; Lógica e Fluxo cobre ponteiros com new e delete, std::vector, std::map e std::set, lambdas, um primeiro contato com recursão e exceções; Programação Orientada a Objetos cobre arquivos de cabeçalho, stack versus heap, smart pointers e RAII, construtores e destrutores, sobrecarga de operadores, funções virtuais, templates, a STL, semântica de movimento e padrões de projeto. O C++ é difícil no começo porque compila erros que outras linguagens recusariam; aprenda a fundo, porque as vagas de C++ contratam exatamente por essa profundidade.IniciarPágina própria
  2. 2
    Começar esta etapaIniciarArquivos e caminhos, curingas, grep, pipes e redirecionamento, permissões, variáveis de ambiente e shell scripts. Servidores em C++, sistemas de trading e boa parte do trabalho embarcado rodam em Linux, e as ferramentas do dia a dia são ferramentas de terminal: você compila com g++ ou clang++, alimenta um programa com entrada de teste usando <, captura a saída com > e procura num log de crash com grep. Um shell script transforma um build ou uma execução de testes com várias etapas em um único comando.IniciarPágina própria
  3. 3
    Começar esta etapaIniciarStaging, commits, .gitignore, branches, merges e conflitos, remotos e como desfazer erros. Arquivos-objeto, binários e o diretório build/ vão no .gitignore, nunca num commit. Estúdios de jogos muitas vezes guardam os enormes assets de arte no Perforce, mas em quase todo o resto o C++ vive no Git, do firmware embarcado aos compiladores open source.IniciarPágina própria
  4. 4
    Começar esta etapaIniciarFiltros, ordenação, joins, agrupamento, agregações, subqueries, cláusulas WITH e window functions, em tabelas reais. SQL aparece menos em C++ do que nas linguagens web, mas aparece: o SQLite, o motor em que estas lições rodam, é escrito em C e vem embutido em inúmeros apps de desktop e mobile, sistemas de trading e de telemetria guardam o histórico em bancos de dados, e entrevistas de engenharia de software em geral às vezes incluem uma query.IniciarPágina própria
  5. 5
    Começar esta etapaIniciarPilha, fila, lista ligada, árvore binária e tabela hash, cada uma escrita do zero em C++ e depois usada em problemas. Aqui os ponteiros do passo um ficam concretos: todo nó que você aloca com new precisa ser liberado com delete ou pertencer a um std::unique_ptr, e o destrutor de uma árvore é recursão na prática. Depois disso, escolher entre std::vector, std::list e std::unordered_map é uma decisão de custo, não de hábito.Iniciar
  6. 6
    Começar esta etapaIniciarDesafios de recursão, depois bubble, selection, insertion, merge e quick sort em C++, com as ordenações animadas no visualizador de algoritmos da Coddy. Dois fatos do C++ fazem mais sentido depois: uma recursão profunda demais estoura a pilha de chamadas e costuma derrubar o programa na hora, sem exceção para capturar, e std::list tem o próprio membro sort() porque std::sort precisa de iteradores de acesso aleatório, que uma lista ligada não consegue oferecer.Iniciar
  7. 7
    Começar esta etapaIniciarUm projeto orientado a objetos construído do início ao fim e um banco de problemas de programação, ambos em C++. Em C++, código legível inclui um ownership claro: quem aloca, quem libera, qual referência pode sobreviver a quê. O code review de C++ volta a isso o tempo todo.Iniciar
O que você recebe
Tudo o que você vai usar para aprender a programar

Aprenda Fazendo

Escreva código real, consulte bancos de dados, crie sites e domine prompts de IA. Nossas lições interativas cobrem todas as habilidades que desenvolvedores modernos precisam.

playground.js
Editor de Código
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Teste #1test Case Success icon
Teste #2test Case Success icon
Teste #3test Case Failure icon
Entrada
"Alex"
Saída
"Hello, Coddy! Alex"

Construa Sua Sequência

Mantenha a consistência e veja seu progresso crescer! Acompanhe seu hábito diário de programação, proteja sua sequência com dias de congelamento e ganhe recompensas por aparecer todos os dias.

12 dias de sequência

Volte amanhã para manter sua sequência!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Tudo ou Nada

Dia 5 de 7

fire Freeze icon

Congelar Sequência

2 left

Onde Quiser

Leve sua jornada de programação com você! Sem configuração, sem downloads - apenas abra e comece a programar. Disponível no iOS, Android e Web com avaliações de 4.9 estrelas.

Python
7Sequência
250Pontuação
5Energia
Variáveis
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
CONTINUAR
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Jornada
Metas
Tabela de Líderes
Perfil
4.9
EstrelaEstrelaEstrelaEstrelaEstrela
Avaliação

Você Não Está Sozinho

Compita em placares globais, convide amigos para ganhar recompensas e celebre as conquistas uns dos outros. Programar é melhor com amigos!

Liga Challenger
Liga ChallengerTop 7 avançam
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconZona de promoçãoleaderboard Arrow Up icon

Aprenda de todas as formas

Leia, ouça, teste-se, pergunte à IA ou consulte qualquer coisa que já tenha estudado. Cada lição se adapta a você.

Introdução a variáveis
Áudio

Uma variável é um contêiner nomeado que armazena um valor que você pode referenciar depois.

Em Python, você cria uma escrevendo o nome, um sinal de igual e o valor que quer armazenar.

O valor pode mudar com o tempo - reatribuir o nome simplesmente o aponta para um novo valor.

1xSarah

Seja Certificado

Ganhe certificados para cada curso que você completar. Adicione-os ao seu perfil do LinkedIn e currículo para mostrar sua experiência em programação aos empregadores.

CoddyCertificado de Conclusão
Este certifica queJoão Silvacompletou com sucesso
python iconFundamentos de Python
Verificado
Datajan 2026
LinkedInAdicionar ao LinkedIn

Por que seguir este roadmap de C++ na Coddy

  • Feito para as vagas em que o C++ é o escolhido. Engines de jogos, sistemas de trading, navegadores, bancos de dados, dispositivos embarcados e computação de alto desempenho são as áreas em que o C++ é escolhido pelo controle sobre velocidade e memória, e cada um desses cargos espera que você saiba quanto custa o seu código. Este roadmap constrói isso a partir da própria linguagem.
  • Memória ensinada, não escondida. O curso de C++ cobre ponteiros com new e delete, depois stack versus heap, smart pointers e RAII, construtores de cópia e de movimento e a regra dos três, dos cinco e do zero: os temas a que as entrevistas de C++ sempre voltam.
  • Estruturas de dados donas da própria memória. A lista ligada e a árvore binária do passo cinco são nós que você mesmo aloca e libera, então um vazamento ou um ponteiro pendente é algo que você depura, e não algo sobre o qual você só lê. Os desafios de recursão e as cinco ordenações também são em C++.
  • Avaliado, com ajuda nos erros de compilação. Cada lição termina em um desafio de C++ corrigido por casos de teste e, quando o compilador ou um teste diz não, o Bugsy aponta na direção da correção sem escrevê-la por você. A maioria dos cursos termina com um certificado gratuito, e não há compilador nem toolchain para instalar.

Perguntas frequentes sobre como se tornar desenvolvedor C++

Quanto tempo leva para se tornar desenvolvedor C++?

Mais tempo do que na maioria das linguagens: de nove a dezoito meses, com cerca de uma hora por dia, é uma faixa realista para ir do zero a uma entrevista para vaga júnior de C++. O curso de C++ em si leva cerca de dois meses nesse ritmo, e a seção de programação orientada a objetos, com gerenciamento de memória, templates e semântica de movimento, é a parte para fazer com calma; a linha de comando, Git e SQL somam cerca de um mês; estruturas de dados e ordenação, mais dois ou três meses. Depois, as vagas especializadas acrescentam o próprio domínio: uma engine, uma stack de trading, um microcontrolador.

C++ é uma boa primeira linguagem para um engenheiro de software?

É uma primeira linguagem exigente. Você aprende como memória, tipos e compilação funcionam de verdade, o que facilita toda linguagem que vier depois, e paga por isso com um progresso mais lento e erros mais duros no começo. Se você já sabe que quer trabalhar com jogos, sistemas ou software embarcado, começar em C++ é razoável; se está em dúvida, muita gente aprende Python primeiro e chega ao C++ depois, e a página do caminho de engenheiro de software é este roadmap em Python.

O que um desenvolvedor C++ precisa saber além de C++?

A linha de comando, Git e SQL, que este roadmap cobre, e depois a toolchain em volta da linguagem: um sistema de build, normalmente o CMake; um depurador como GDB ou LLDB; sanitizers que pegam erros de memória em tempo de execução; e um gerenciador de pacotes como vcpkg ou Conan. Depois vem o domínio que você mira, seja uma engine de jogos, o funcionamento interno de sistemas operacionais, redes ou hardware embarcado.

C++ ou Rust para uma carreira em programação de sistemas?

C++ pelo tamanho do mercado de trabalho que já existe, Rust por uma fatia crescente dos projetos novos. Engines de jogos, sistemas de trading, navegadores e compiladores são, em sua maioria, bases de código C++ de longa data, enquanto o Rust ganha terreno em infraestrutura nova e em código sensível à segurança, porque o compilador dele elimina classes inteiras de bugs de memória. Aprender C++ primeiro faz as regras do Rust parecerem familiares, e este roadmap também existe em Rust.

Qual curso deste roadmap não é ensinado em C++?

Um só: o curso de código limpo por enquanto só é ensinado em Python, então aparece listado depois dos passos, e não no passo sete. O assunto dele, nomes, funções pequenas e responsabilidades claras, independe da linguagem, e as C++ Core Guidelines aplicam o mesmo raciocínio ao C++ depois que você o terminar. Todos os passos, incluindo o projeto orientado a objetos e os problemas de programação, são em C++.

Este roadmap de C++ é gratuito?

Sim. Todos os cursos dele são gratuitos: as lições, o compilador de C++ e o terminal Linux no seu navegador, os desafios corrigidos por testes, as dicas do Bugsy e os certificados. O Pro remove o limite diário de energia e libera ajuda de IA ilimitada, e nada neste roadmap depende dele.

Outras trilhas de aprendizado

Os mesmos cursos, organizados para outra função. O progresso é mantido: um curso concluído em uma trilha conta em todas as trilhas que o incluem.

Todas as trilhas de aprendizado
Ilustração das linguagens de programação do Coddy

Comece a trilha de Engenheiro de software grátis

Começar a aprender