Исчерпывающий список книг для совершенства в C++

C++

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

  1. Для профессионалов.
  2. Справочники.

Для профессионалов

Обложка книги «»

Современное проектирование на C++

Купить 

Книга по продвинутому обобщенному программированию. Описывает фундаментальные идиомы обобщенного программирования, показывая, сколько полезных паттернов (например, аллокаторы маленьких объектов, функторы, фабрики, посетители и мультиметоды) может быть реализовано эффективно, модулярно и исключительно средствами дженерик-программирования.


Обложка книги «»

Practical C++ Metaprogramming

Скачать 

Книга от издательства O’Reilly. В начале читателя знакомят с понятием метапрограммирования. В последующих главах подробно рассматривается практическая сторона вопроса, а именно:

  • работа с библиотеками Boost.MPL, Boost.Hana и Brigand;
  • разбор техник для написания более компактного, красивого и безопасного кода с помощью метапрограммирования;
  • использование «фишек» стандартов C++11 и C++14, позволяющих писать более простой код;
  • написание кода, требующего существенно меньшее количество тестов и затрат на обслуживание.

Книга распространяется свободно, достаточно заполнить регистрационную форму.


Обложка книги «»

The Boost C++ Libraries

Читать 

Цель данной книги — дать читателю базовые знания о библиотеке Boost. Boost очень часто используется в крупных проектах, написанных на C++, поскольку она предлагает множество функций, которые пока отсутствуют в стандартах C++. Например, реализацию графов, работу с регулярными выражениями, различные настраиваемые псевдослучайные генераторы, и т.д. Использование данной библиотеки позволяет существенно ускорить разработку, за что она получила признание сообщества программистов, пишущих на C++. К тому же знание этой библиотеки будет существенным плюсом в резюме.


Обложка книги «»

C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond

Купить 

Книга объясняет, что такое метапрограммирование, почему это важно и как уникальное сочетание функций в C ++ делает его особенно мощным языком для метапрограммирования. В нем также освещена ​​библиотека Boost — мощная среда с открытым исходным кодом, базирующаяся на идиомах STL, что делает процесс ее изучения более приятным.


Обложка книги «»

Параллельное программирование на С++ в действии. Практика разработки многопоточных программ

Купить 

Книга, рассказывающая о поддержке многопоточности в С++11. Включает в себя описания библиотеки потоков, atomics-библиотеки, модели памяти С++, блокировок и мьютексов (взаимных исключений) вместе с распространенными проблемами дизайна и дебага мультипоточных приложений.


Обложка книги «»

Advanced Metaprogramming in Classic C++

Купить 

Руководство, написанное до выхода С++11, фокусирующееся больше на практике, чем на теории. Содержит множество примеров кода, рассказывает о приемах, которые, без сомнения, полезно знать. Если вы сможете смириться с плохим оформлением, то читать эту книгу легче, чем Александреску, и, что спорно, почерпнете из нее больше. Даже профессиональные разработчики смогут найти для себя что-то новое.


Справочники для всех уровней

Обложка книги «»

Язык программирования С++

Купить 

Классическое введение в С++, написанное автором этого языка. Легко читается и покрывает все аспекты технологии, начиная от самого языка и стандартной библиотеки и заканчивая парадигмами программирования и философией С++ (последние издания преодолели барьер в 1000 страниц). Четвертое издание, выпущенное в мае 2013 года, покрывает и С++11.


Обложка книги «»

Стандартная библиотека C++. Справочное руководство

Купить 

Справочник по стандартной библиотеке С++. Второе издание покрывает С++11. В книге основной упор делается на стандартную библиотеку шаблонов (STL), в особенности на алгоритмы, итераторы, контейнеры и функциональные объекты. Помимо этого, в книге освещается современный стиль программирования на C++, в частности:

  • диапазонные циклы for;
  • лямбда-функции;
  • вариативные шаблоны.

Обложка книги «»

Standard C++ IOStreams and Locales: Advanced Programmer's Guide and Reference

Купить 

В книге содержится исчерпывающая информация о потоках и локалях. Авторы поясняют, какие проблемы могут решить два этих компонента, и иллюстрируют теорию огромным количеством примеров. В книге достаточно много материала о концепции потоков и локалей, их архитектуре, а также представлены различные варианты их использования. Книгу очень удобно использовать, когда требуется решить проблему в коде, связанную с этими двумя компонентами, за что она заслуженно попала в подборку.


Стандарт С++

Купить 

Полный справочник по всему С++. Предназначен только для профессионалов, которые готовы потратить кучу времени и усилий на его изучение и понимание. Если вы отчаялись искать ответ на ваш вопрос в различных учебниках и даже на Stack Overflow, попробуйте его найти здесь. Осторожно, погружение в глубины C++ не для слабонервных.


Presentation Materials: Overview of the New C++ (C++11/14)

Купить 

Материалы презентации (слайды и заметки лектора) с трехдневного тренировочного курса, проведенного Скоттом Мэйерсом, который считается уважаемым писателем в данной сфере. И хотя количество поднятых тем мало, качество на высоте. На семинаре обсуждались ключевые функции стандартов C++11 и C++14, а также возможности их использования.


Обложка книги «»

Полный справочник по C++

Купить 

В книге описаны все ключевые слова, функции, классы и свойства языка С++, соответствующие стандарту ANSI/ISO. Отлично подойдет для того, чтобы время от времени в нее заглядывать и находить нужные ответы на интересующие вопросы. Справочник состоит из пяти частей:

  • подмножество Си;
  • язык С++;
  • библиотека стандартных функций;
  • библиотека стандартных классов;
  • приложения на языке С++.

Понравилась подборка? Поделитесь своим мнением в комментариях.

Ещё интересное для вас:
— Биты, байты, Ада Лавлейс — тест на знание околоIT.
— Level Up — события и курсы, на которых можно поднять свой уровень.
— Работа мечты — лучшие IT-вакансии для вас.