Профессиональный C++: продвинутые техники
От новичка до эксперта: шаблонное метапрограммирование, многопоточность и оптимизация
Краткое содержимое:
«Профессиональный C++: продвинутые техники» — это практическое руководство для разработчиков, которые уже освоили основы языка и хотят перейти на новый уровень. Книга не пересказывает документацию, а учит мыслить как инженер высоконагруженных систем: эффективно управлять памятью, проектировать гибкие архитектуры и писать код, который работает быстро и надёжно.
Для кого эта книга
- Разработчиков на C/C++ с опытом от 1 года, которые хотят углубить знания в шаблонах и метапрограммировании.
- Инженеров, переходящих от встраиваемых систем к серверной разработке или игровым движкам.
- Программистов, готовящихся к собеседованиям в крупные IT-компании (Google, Yandex, JetBrains).
Что вы узнаете
- Шаблонное метапрограммирование: SFINAE, type traits, constexpr-вычисления, вариативные шаблоны и концепты C++20.
- Управление памятью и RAII: умные указатели, аллокаторы, пулы объектов и предотвращение утечек.
- Многопоточность и асинхронность: std::thread, std::async, мьютексы, lock-free структуры, модели памяти.
- Оптимизация производительности: профилирование, кэш-промахи, move-семантика, RVO и copy elision.
- Проектирование: CRTP, политики, фабрики, pimpl идиома, модульные тесты с Google Test.
Особенности издания
- Все примеры совместимы с C++17/20 (GCC, Clang, MSVC).
- Реальные задачи: от оптимизации парсера JSON до реализации thread-safe очереди.
- Сравнение с другими языками (Rust, Go) для критического мышления.
- Глава по инструментам: Valgrind, Perf, Sanitizers, CMake.
Книга построена по принципу «от проблемы — к решению». Каждая глава начинается с реальной задачи (узкое место производительности, сложность поддержки кода), а затем разбирается техника, которая её решает. В конце глав — упражнения для самостоятельной работы.
«Профессиональный C++» — это не справочник, а навигатор по сложным темам. После её прочтения вы сможете читать код Boost, Qt и Unreal Engine без страха, проектировать библиотеки с нуля и уверенно проходить технические собеседования.
Рекомендаций
Веб-разработка на PHP: от основ до деплоя
JavaScript (Node.js) для data science: анализ данных и машинное обучение
Тестирование C# (.NET) приложений: от юнит-тестов до интеграционных сценариев
Паттерны проектирования на Swift: iOS/macOS
Архитектура JavaScript (Node.js) приложений
Программирование на Kotlin