Curso Acelerado de C++
336 páginas
Portuguese
PDF
4.5

Curso Acelerado de C++

Curso Acelerado de C++

Autor:

Ano:

Resumo:

Introdução

O livro «Accelerated C++: Practical Programming by Example» (em português — «Curso Acelerado de C++») de Andrew Koenig e Barbara Moo não é apenas mais um livro didático sobre linguagem de programação. É um manifesto de uma nova abordagem para o ensino de C++, que difere radicalmente dos volumes clássicos como «A Linguagem de Programação C++» de Bjarne Stroustrup. Publicado em 2000, este livro ainda continua sendo uma das introduções mais eficazes ao C++ para quem já sabe programar em outras linguagens (Java, Python, C#).

Os autores são especialistas reconhecidos no mundo do C++: Andrew Koenig foi um dos primeiros membros do comitê de padronização do C++, e Barbara Moo é coautora de vários livros e editora de longa data. Seu objetivo era ambicioso: ensinar a escrever C++ real e moderno desde o primeiro dia, evitando práticas ultrapassadas e código "puro" no estilo C.

Sobre o que é este livro?

Ao contrário dos livros didáticos tradicionais, que começam com tipos de dados, loops e funções, «Accelerated C++» mergulha imediatamente o leitor no trabalho com a biblioteca padrão (STL). O primeiro programa já usa vector, string e iostream. Os autores partem do princípio de que o leitor já está familiarizado com conceitos básicos de programação (variáveis, condicionais, loops), por isso não perdem tempo explicando esses fundamentos.

O livro é baseado em exemplos. Cada capítulo é um programa completo que resolve uma tarefa específica: desde a contagem de palavras até o trabalho com imagens. Gradualmente, de capítulo em capítulo, novos conceitos são introduzidos: iteradores, algoritmos, contêineres, classes, modelos (templates), gerenciamento de memória. Ao final do livro, o leitor não apenas dominará a sintaxe, mas também compreenderá a filosofia do C++: RAII, exceções, expressões idiomáticas de cópia e troca.

Para quem é este livro?

O livro é destinado a programadores experientes que desejam aprender C++ de forma rápida e eficaz. Se você já trabalhou com Java, Python ou C# e deseja migrar para C++ para programação de sistemas, jogos ou aplicações de alta carga, esta é a sua escolha. Para iniciantes que estão apenas começando sua jornada na programação, o livro parecerá muito difícil e rápido.

O que o leitor aprenderá?

  • Biblioteca Padrão (STL): contêineres (vector, list, map), iteradores, algoritmos (sort, find, copy).
  • Trabalho com strings e entrada/saída: string, iostream, fluxos de arquivos.
  • Programação Orientada a Objetos em C++: classes, encapsulamento, herança, polimorfismo.
  • Modelos (templates): escrita de código genérico, funções e classes modelo.
  • Gerenciamento de memória: ponteiros inteligentes (shared_ptr — no livro é usado auto_ptr, que está obsoleto, mas o conceito está correto), RAII, prevenção de vazamentos.
  • Tratamento de exceções: código seguro, garantias de exceções.
  • Expressões idiomáticas de C++: cópia e troca (copy-and-swap), pimpl, expressão idiomática RAII.
  • Projeto de programas: divisão em módulos, arquivos de cabeçalho, namespaces.

Pontos fortes do livro

1. Orientação prática. Cada capítulo contém um exemplo completo que pode ser executado e modificado imediatamente. A teoria é fornecida exatamente na medida necessária para entender o exemplo.

2. C++ moderno (para sua época). O livro ensina a usar a STL, em vez de reinventar a roda. Os autores evitam consistentemente construções obsoletas (por exemplo, arrays no estilo C, ponteiros brutos para posse de memória).

3. Estrutura lógica. O material é apresentado em espiral: primeiro exemplos simples, depois eles se tornam mais complexos, novos detalhes são adicionados. Isso permite aumentar gradualmente a complexidade sem sobrecarga.

4. Ênfase em expressões idiomáticas. O livro explica não apenas

Recommendations