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

Привет, ребята, если вы хотите поднять свои навыки C ++ на новый уровень и хотите углубленно изучить C ++, ища лучшие ресурсы, такие как книги и онлайн-курсы, вы попали в нужное место.

Ранее я делилась моими любимыми курсами по C ++. В этой статье я поделюсь несколькими продвинутыми книгами по CPP и онлайн-курсами, подходящими для разработчиков со средним уровнем знаний и опытных разработчиков от 2 до 5 лет для углубленного изучения C ++.

Когда вы знаете C ++ и потратите пару лет на программирование на C ++, вы почувствуете, что знаете основы и хорошо владеете программированием на C ++.

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

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

Вот почему я рекомендую опытным разработчикам на C ++ читать книги и присоединяться к продвинутым онлайн-курсам от Coursera и Udemy, чтобы пройти путь от младшего разработчика до старшего разработчика.

Помните, что многолетняя работа не сделает вас хорошим программистом на C ++, если вы решите ничего не читать.

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

Кстати, если у вас нет опыта написания кода C ++ и вы только начали изучать C ++, то я предлагаю вам сначала пройти курс C ++ для начинающих, чтобы изучить основы. Если вам нужна рекомендация, я предлагаю вам проверить Полный курс для разработчиков C ++ на Udemy. Это отличный онлайн-курс для изучения основ C ++ с нуля.

10 продвинутых книг и онлайн-курсов по C ++ для опытных разработчиков от 2 до 5 лет

В этой статье я поделюсь некоторыми из лучших книг и онлайн-курсов по C ++, которые я прочитал и к которым присоединился за последние 10-12 лет.

Я все еще читаю и изучаю C ++ и не могу сказать, что освоил его или что-то о нем знаю. Это постоянное путешествие; программист, который читает и применяет знания, узнает больше, чем люди, которые просто читают.

Тем не менее, эти книги и онлайн-курсы сделают вас на 20% лучше, даже если вы поверхностно будете следовать советам, данным в этой книге.

1. Эффективный C ++

Это первая книга по C ++, которую я прочитал о Скотте Мейджоре только для того, чтобы стать его поклонником и прочитать многие из его продолжений Эффективный C ++. Это была лучшая книга, которую должны прочитать опытные программисты на C ++, и она оказалась успешной.

Предыдущие издания были предназначены для программистов, пришедших с C; третье издание меняет это и предназначено для программистов, использующих такие языки, как Java.

В нем представлено около 50+ легко запоминающихся передовых практик и практических правил вместе с их обоснованием. для C ++ Coder в очень доступном (и приятном) стиле.

Несмотря на то, что книга не самая современная, я все же рекомендую программистам на C ++ прочитать ее, потому что данный совет все еще применим. Кстати, для C ++ 11 и C ++ 14 следует предпочесть эффективный современный C ++.

И, если хотите, вы также можете объединить эту книгу с Паттерном проектирования in Modern C ++ курс Дмитрия Неструка по Udemy по изучению шаблонов. Это единственная область, которой не хватает многим разработчикам C ++, и этот курс восполнит этот пробел.

2. Параллелизм C ++ в действии

Это первая книга в этом списке, автором которой является не Скотт Мейерс, а Энтони Уильямс, и, тем не менее, это отличная книга для опытных разработчиков C ++ или тех, кто хочет стать опытным программистом на C ++. Это похоже на то, что Java Concurrency in Action для разработчиков Java.

Параллелизм всегда был сложной задачей в C ++, и это основная область, в которой Java показала хорошие результаты, но параллелизм C ++ прошел долгий путь.

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

Это второе издание, выпущенное в прошлом году. Он обновлен, чтобы охватить все последние изменения по сравнению с C ++ 14 и C ++ 17. Книга научит вас всему, что нужно разработчику на C ++ для написания надежного, высокопроизводительного и элегантного параллельного приложения на C ++.

Если вы серьезно относитесь к программированию на C ++, я настоятельно рекомендую вам прочитать эту книгу. Если вы хотите, вы также можете объединить эту книгу с курсом Современный параллелизм C ++ в глубине Касуна Лиянаге на Udemy для более быстрого и активного обучения. Он прекрасно дополняет эту книгу.

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

Это еще одна замечательная книга Скотта Мейерса, которая является продолжением Effective C ++. На самом деле это одна из самых полезных книг, если вы переходите с C ++ 03 на C ++ 11 и C ++ 14. Я настоятельно рекомендую вам прочитать его вместе с Эффективным C ++.

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

В нем изложены практические правила и объясняется, почему вы должны им следовать с полным обоснованием.

Если вам нужен курс для лучшего изучения библиотеки C ++ STL, вы также можете посмотреть этот курс Стандартная библиотека шаблонов C ++ на практике от Packt on Udemy. Это 10-часовой комплексный курс для лучшего изучения STL.

4. Более эффективный C ++

Сообщал ли я вам, что Скотт Майерс займет первую четверку в списке 10 лучших книг по C ++?

Что ж, если у меня нет, то приношу свои извинения, но я не могу оставить ни одного из его названий «Эффективный C ++»; они слишком хороши, чтобы уйти. Эта книга вводит еще больше практических правил, чем «Эффективный C ++».

И, если вам нужен курс к этой книге, нет лучшего курса, чем курс Яшванта Кантткара Программирование на C ++ для опытных инженеров по образовательным вопросам. Это интерактивный практический курс, который поможет вам отточить свои навыки C ++.

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

5. Исключительный C ++

Еще несколько книг из области «Эффективный C ++», но не от Скотта Мейерса. Херб Саттер - автор этой интересной книги-головоломки на C ++.

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

6. Больше исключительного C ++

Еще одна хорошая книга от Herb Sutter охватывает дополнительные темы безопасности исключений, не охваченные в Exceptional C ++, а также обсуждение эффективного объектно-ориентированного программирования на C ++ и правильного использования стандартной библиотеки шаблонов (STL). Вы можете прочитать эту книгу вместе с «Эффективным STL» и «Эффективным C ++».

7. За пределами стандартной библиотеки C ++: введение в Boost

Несомненно, Boost - одна из лучших библиотек C ++ для реальных проектов, и каждый опытный разработчик C ++ должен быть с ней знаком. Эта книга содержит прекрасное описание базовых библиотек Boost и объясняет, как их использовать и почему их следует использовать.

Эта книга предназначена в основном для опытных программистов на C ++, поскольку в ней объясняется не только то, как используйте библиотеку boost, но также почему вы должны использовать эти библиотеки. Как профессиональному разработчику C ++ необходимо изучить и познакомиться с библиотекой Boost, и нет лучшей книги для этого, чем эта.

Вы также можете объединить эту книгу с Изучите продвинутое программирование на C ++ , проведенный Джоном Перселлом в Удеми. Этот курс охватывает библиотеку C ++ STL и знакомит с современными концепциями C ++, представленными в C ++ 11, такими как выражение Lambda.

8. Современный дизайн на C ++

The Moder C ++ Design Андрея Александреску - одна из лучших книг по продвинутым универсальным методам программирования. Как и Exceptional C ++, эта книга также является частью серии углубленных исследований C ++, написанной Бьорном Страуструпом.

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

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

Вы также можете объединить эту книгу с C ++ 17 в деталях: глубокое погружение, чтобы изучить новые функции, представленные в C ++ для написания более современного и производительного кода C ++.

9. Метапрограммирование шаблонов C ++

Это отличная книга о метапрограммировании на C ++, основанная на библиотеке метапрограммирования Boost. Это также одна из лучших в серии книг по C ++ In-Depth, начатой ​​Бьорном Страуструпом.

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

Шаблоны также широко используются в разработке, особенно во встроенном программировании для создания высокопроизводительного кода.

Вы также можете объединить эту книгу с Начальным курсом по шаблонам C ++ от Udemy. Это бесплатный курс, поэтому вам не нужно ничего платить, просто создайте учетную запись Udemy и присоединитесь к курсу.

Это все о лучших книгах по C ++ для опытных программистов на C ++. Эти книги действительно хороши, даже если у вас есть 2-3 года опыта разработки на C ++ и вы хотите стать опытным программистом на C ++.

Как я уже говорил, сложно освоить C ++, даже сложнее, чем Java, но нам повезло, что у нас есть так много хороших материалов по программированию на C ++.

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

Кстати, если вы программист на C и хотите изучить C ++, то я также предлагаю вам пройти курс C ++ для программистов на C, часть A на Coursera, это отличный ресурс для изучения. C ++ для программистов на C.



Другие книги и статьи по программированию, которые вы, возможно, захотите изучить

Спасибо, что прочитали эту статью. Если вам нравятся эти продвинутые курсы Java, поделитесь ими со своими друзьями и коллегами. Если у вас есть какие-либо вопросы или отзывы, напишите нам.

P. S. - Если вы новичок в программировании на C ++ и хотите изучить C ++ более структурированно и лучше, я настоятельно рекомендую курс Начало работы с C ++ и не только Тима Бучалаки и его Академии. на Удеми. Это один из лучших и более структурированных курсов, которые вы можете найти в Интернете.