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

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


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

Fundamentals of Programming C++

Скачать 

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


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

C++ Annotations

Читать 

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


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

C++ Succinctly

Скачать 

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


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

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

Купить 

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


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

Язык программирования C++. Лекции и упражнения

Купить 

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


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

The Rook's Guide to C++

Скачать 

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


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

Learn C++

Читать 

В нашу подборку книг затесался сайт. Вы думаете, это какая-то ошибка? Как бы не так! Он здесь совсем не случайно. Это онлайн-учебник по всему С++. Его несомненное преимущество в том, что каждая глава богато иллюстрирована кодом, так что материал будет легче усвоить. Все расписано достаточно подробно, но самое главное — материал постоянно дополняется в соответствии с новыми стандартами C++.


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

Изучаем C++ через программирование игр

Купить 

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


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

Объектно-ориентированное программирование в С++

Купить 

Книга Роберта Лафоре из серии «Классика Computer Science». В ней очень грамотно и полно представлено понятие объектно-ориентированного программирования в C++. Кроме теории, книга предлагает читателю сделать около 100 различных упражнений, которые отточат навык владения основами ООП. Отлично подходит для начинающих программистов.


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

Structured Programming with C++

Скачать 

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


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

Software Design Using C++

Читать 

Еще одна онлайн-книга, которая дает материал в соответствии с тремя курсами, которые обычно в американских университетах называются CS 1, CS 2 и «Структуры данных». Новичкам стоит начать именно с изучения материала для курса CS 1, поскольку в нем даются основы программирования на C++. Когда вы освоите данный курс, то можете перейти на следующую ступень и изучить CS 2, а затем уже и структуры данных. Кстати, советуем ознакомиться и с нашим материалом по структурам данных.


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

Как программировать на C++

Купить 

Харви и Пол Дейтелы в своей книге решили отойти от привычного порядка введения в C++ и уже с третьей главы знакомят читателя с основами ООП, тем самым не освещая должным образом структурное и процедурное программирование. Большое внимание уделяется объектно-ориентированному проектированию программных систем с помощью графического языка UML2. Данный учебник является одним из самых популярных в мире по C++.


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

Язык программирования С++. Cтандарт C++11. Краткий курс

Купить 

Книга представляет собой быстрый (примерно 180 страниц и 14 глав) обзор возможностей С++ и его стандартной библиотеки (стандарт С++11) на достаточно высоком уровне для программистов, которые уже знакомы с языком, или, по крайней мере, имеют значительный опыт в программировании. Эта книга — расширенная версия материала глав 2-5 из четвертого издания «Языка программирования С++».


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

Язык программирования C++. Базовый курс

Купить 

Тысяча страниц очень подробного введения в C++, которое детально покрывает буквально все аспекты языка в доступном формате. С самого начала книги читателя знакомят со стандартной библиотекой C++, ее самыми популярными функциями и средствами, что позволяет в скором времени приступить к написанию программ, даже если не были изучены некоторые нюансы языка. Пятое издание (выпущено 16 августа 2012-ого) обновлено для С++11.


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

How to Think Like a Computer Scientist

Скачать 

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


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

An Introduction to GCC

Читать 

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


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

Эффективное программирование на C++. Практическое программирование на примерах

Купить 

Содержит в себе все то же самое, что и «Учебник для начинающих: С++», но короче в 4 раза. В основном это из-за того, что автор не пытается ввести читателя в программирование, а сразу учит С++ тех, кто пришел с других языков. Может быть немного сложна для понимания, но тем, кто сможет осилить курс, это еще и здорово сократит время изучения.


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

Упражнения

Читать 

Раздел упражнений расположен на официальном сайте создателя языка, Бьерна Страуструпа. Его не стали выпускать в печатном виде, поскольку раздел постоянно обновляется. Документ содержит множество упражнений различных уровней. Данный показатель указывается рядом с номером упражнения. Например, уровень (*1) означает, что задачу вполне реально решить за 10 минут, (*2) — за час, а на (*3) вы можете потратить целый день. Конечно, эти показатели не точные и целиком зависят только от вашего опыта, так что дерзайте! Чем больше задач вы решите, как легких, так и сложных, тем больше вы освоите инструменты несомненно мощного языка C++.


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

Open Data Structures

Скачать 

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


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

Data Structures and Algorithm Analysis

Скачать 

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


Если вы знаете другие книги, подходящие новичкам, поделитесь ими в комментариях.

Перевод статьи «The Definitive C++ Book Guide and List»

Ещё интересное для вас:
Тест: чьё это рабочее место? Угадываем айтишников по их столам
Тест: что вы знаете о работе мозга?
Тест: какой язык программирования вам стоит выбрать для изучения?