Menu
Coddy logo textTech
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.

483,554+ codders inscritos nestes cursos

614 lições524 desafios2,885 perguntas de quiz

O roadmap de desenvolvedor C++, passo a passo

17 cursos6 seções614 lições524 desafios2,885 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

Learn by Doing

Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.

playground.js
Code Editor
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Input
"Alex"
Output
"Hello, Coddy! Alex"

Build Your Coding Streak

Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.

12 days streak

Return tomorrow to keep your streak!

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

Double or Nothing

Day 5 of 7

fire Freeze icon

Streak Freeze

2 left

Code Anywhere, Anytime

Take your coding journey on the go! No setup, no downloads - just open and start coding. Available on iOS, Android and Web with 4.9 star ratings.

Python
7Streak
250Score
5Energy
Variables
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
CONTINUE
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
Journey
Goals
Leaderboard
Profile
4.9
StarStarStarStarStar
Rating

You're Not Alone in This

Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!

Challenger League
Challenger LeagueTop 7 advance
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 iconPromotion zoneleaderboard Arrow Up icon

Every way to learn

Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.

Intro to Variables
Audio

A variable is a named container that stores a value you can reference later in your program.

In Python, you create one by writing the name, an equals sign, then the value you want to store.

The value can change over time - reassigning the name simply points it to a new value.

1xSarah

Prove Your Skills

Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.

CoddyCertificate of Completion
This certifies thatJohn Doehas successfully completed
python iconPython Fundamentals
Verified
DateJan 2026
LinkedInAdd to 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
Coddy programming languages illustration

Comece a trilha de Engenheiro de software grátis

Começar a aprender