Как учить C++: полезные материалы

Этот язык программирования используют для создания сложных IT-продуктов: беспилотных автомобилей, робототехники, микроконтроллеров, видеоигр. В нашей подборке — книги и онлайн-учебник для тех, кто хочет овладеть всеми нюансами С++

«Программирование: принципы и практика с использованием C++»

Автор: Бьёрн Страуструп

Книга на Яндекс Маркете

Кому почитать: тем, кто ещё никогда не программировал, но готов серьёзно учиться

Страуструп — автор языка C++ и большинства его первых библиотек. Книгу часто используют в университетах при изучении программирования. Но можно работать с ней и самостоятельно: читать главы по порядку и знакомиться с примерами.

Автор обращает внимание на основные концепции, методы дизайна и программирования, особенности языка C++ и его библиотек. Книга рассчитана на изучение основ за три месяца.

«Язык программирования C++»

Автор: Бьёрн Страуструп

Книга на Яндекс Маркете

Кому почитать: тем, кто имеет хотя бы небольшой опыт программирования

Ещё одна книга создателя языка C++. Если первая — введение в программирование, то эта — классический учебник по C++. Автор предлагает:

  • базовое руководство по языку;

  • полное освещение средств языка, нацеленных на абстрактные типы данных и объектно ориентированное программирование;

  • описание способов построения библиотек высокого класса;

  • примеры реализации ключевых типов данных — графических объектов, ассоциативных массивов и потоков ввода-вывода.

Четвёртое издание описывает версию C++11. Но полученные знания будут актуальны для любой версии языка.

«Эффективное использование С++. 55 верных способов улучшить структуру и код ваших программ»

Автор: Скотт Майерс

Книга на Яндекс Маркете

Кому почитать: тем, кто знаком с основами C++

Майерс — один из главных экспертов по С++. В книге он уделяет мало внимания основам программирования и синтаксису C++, зато подробно рассказывает о низкоуровневой разработке, логике, использовании интуиции для поиска решений. А ещё подсказывает, как выбирать библиотеки и вырабатывать собственный стиль кода. Книга помогает понять, что такое плохой код и откуда он берётся.

«Эффективный и современный C++»

Автор: Скотт Майерс

Книга на Яндекс Маркете

Кому почитать: тем, кто владеет языком C++ на начальном уровне

Если предыдущая книга больше касается общих принципов программирования на C++, то эта посвящена особенностям спецификаций 11-й и 14-й версий языка. Правда, после них уже вышли 17-я и 20-я версии, но предыдущие вовсю используют в продакшене.

«Осваиваем C++17 STL»

Автор: Артур О’Двайр

Книга на Яндекс Маркете

Кому почитать: тем, кто хорошо разбирается в языке и хочет освоить библиотеку C++17 STL

Автор рассказывает об особенностях спецификации C++17 на множестве примеров, учит создавать свои типы итераторов, диспетчеры памяти, пулы потоков выполнения. Читатель узнает, чем различаются мономорфизм, полиморфизм и обобщённые алгоритмы. Основательное знакомство с языком C++ — обязательное условие для понимания книги.

«С++20 в деталях»

Автор: Райнер Гримм

Книга на Яндекс Маркете

Кому почитать: тем, кто хорошо разбирается в языке и хочет освоить C++20

С++20 сильно отличается от 17-й версии, поэтому прочитать эту книгу стоит каждому разработчику, который не думает о завершении карьеры. Вы получите представление о ключевых изменениях в ядре языка, новой библиотеке диапазонов, корутинах. Можно использовать книгу как справочное руководство, изучая главы в удобном порядке.

Краткий пересказ от Yandex GPT