Топ книг по программированию для начинающих от профи

Содержание
  1. Программирование: принципы и практика использования C++
  2. Философия C++
  3. C++: базовый курс
  4. Язык программирования C++. Базовый курс
  5. Язык программирования C++
  6. Мюллер Д. П. С# для чайников
  7. Прайс. C# 7 и .NET Core. Кросс-платформенная разработка для профессионалов
  8. Бонд Д. Г. Unity и C# . Геймдев от идеи до реализации
  9. Троелсен и Джепикс. Язык программирования С# 7 и платформы .NET и NET Core
  10. Скит. C# для профессионалов. Тонкости программирования.
  11. Албахари. C# 7.0. Справочник. Полное описание языка
  12. Албахари. C# 7.0. Карманный справочник.
  13. Хокинг. Unity в действии. Мультиплатформенная разработка на C#
  14. Продвинутый уровень
  15. Windows Presentation Foundation в .NET 4.5 с примерами на C# 5.0 для профессионалов
  16. Совершенный код, Стив Макконнелл
  17. , Роберт К. Мартин
  18. Программист-прагматик. Путь от подмастерья к мастеру, Эндрю Хант, Дэвид Томас
  19. , Джон Сонмез
  20. Структура и Интерпретация Компьютерных Программ, Харольд Абельсон, Джеральд Джей Сассман
  21. Алгоритмы. Построение и анализ, Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
  22. , Майкл Нейгард
  23. , Питер Сейбел
  24. Мифический человеко-месяц, Хилл Чапел, Фредерик Брукс
  25. Не заставляйте меня думать!, Стив Круг
  26. Жемчужины программирования, Джон Бентли
  27. Карьера программиста. Как устроиться на работу в Google, Microsoft или другую ведущую IT-компанию, Г. Лакман Макдауэлл
  28. Python 3 и PyQt 5. Разработка приложений (2016)
  29. Изучаем Java на примерах и задачах (2016)
  30. Самоучитель Java с примерами и программами (2016)
  31. Программирование на Java для детей, родителей, дедушек и бабушек
  32. «Алгоритмы: построение и анализ» Томас Кормен, Чарльз Лейзерсон
  33. «Искусство программирования» (все тома) Дональд Кнут
  34. «Сколько стоит программный проект» Стив Макконнелл
  35. «Эмоциональный интеллект» Дэниел Гоулман
  36. «Тонкое искусство пофигизма» Марк Мэнсон
  37. «Человеческий фактор: успешные проекты и команды» Том Демарко
  38. 5. Кэти Сьерра и Берт Бейтс “Изучаем Java”
  39. 6. Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му “Язык программирования C++. Базовый курс”
  40. «Психбольница в руках пациентов» Алан Купер
  41. Самые рекомендуемые книги для программистов на русском языке
  42. 1. «Эффективная работа с унаследованным кодом», Майкл К. Физерс
  43. 2. «Приёмы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма и другие
  44. 3. «Чистый код. Создание, анализ и рефакторинг», Роберт К. Мартин
  45. 4. «Предметно-ориентированное проектирование», Эрик Эванс
  46. 5. «JavaScript: сильные стороны», Дуглас Крокфорд
  47. 6. «Шаблоны корпоративных приложений», Мартин Фаулер и другие

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

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

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

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

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

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

Философия C++

Автор: Брюс Эккель

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

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

Учебник рекомендован для всех, кто изучает С++, и имеет продуманную структуру. Материал подается поэтапно — от простого к сложному. В книге много иллюстраций и схем, которые помогают в усвоении прочитанного. В каждой главе даются подробные объяснения.

Поскольку С++ является основным при разработке коммерческих программ и имеет существенное сходства с Java, то рекомендуется обратить внимание и на другой учебник Эккеля — «Философия Java», он поможет в изучении этого языка.

Второй том «Философии С++» посвящен практическим занятиям. В книге разбирается много примеров обработки исключений, изучаются библиотеки и различные паттерны проектирования.

C++: базовый курс

Автор: Герберт Шилдт

Книга написана признанным экспертом, Гербертом Шилдтом. У автора большой опыт в области создания качественных учебников и пособий по программированию на С, С++, С# и Java. Многие книги Шилдта стали бестселлерами и переведены на разные языки. Одним из самых известных его трудов является учебник «Освой С++ за 21 день».

Учебник «С++: базовый курс» содержит массу информации по программированию на С++. В книге даются как знания об элементарных понятиях, так и более продвинутые.

Автор не скупится и делится своим богатым опытом программирования. На страницах книги представлены рекомендации и советы о том, как можно существенно повысить продуктивность работы. Учебник снабжен множеством примеров из практики программирования. После внимательного изучения «С++: базовый курс» у обучающегося сложится полное представление о языке С++, его особенностях, достоинствах и недостатках.

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

Авторы: Стенли Липпман, Жози Лажойе, Барбара Э. Му

Книга написана специалистами с солидным опытом в сфере разработки программных решений. Стенли Липпман работает в Walt Disney и занимается программирование в области трехмерной графики. Жози Лажойе является сотрудником IBM и совершенствует ядро С++, а Барбара Э. Му — опытный разработчик, которая сотрудничала с самим Страуструпом.

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

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

Авторы на свое усмотрение выделили некоторые важные, по их мнению, темы и сделали их детальный разбор. Иные же стороны языка программирования С++ даются в виде задач. Главы сопровождаются емкими резюме и списком новых терминов, что помогает эффективному усвоению материала.

Читатель знакомый с азами программирования сможет быстро освоить информацию из книги и начать полноценно работать с языком.

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

Автор: Стивен Прата

Фундаментальный труд Стивена Прата, в котором рассматриваются навыки обектно-ориентированного, обобщенного и процедурного программирование. Объем знаний, представленный в книге, колоссален, недаром в нем 1450 страниц.

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

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

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

Мюллер Д. П. С# для чайников

Даже если вы никогда не сталкивались с программированием, это пособие как раз это исправит и поможет освоить язык. Из книги вы узнаете о конструкциях и операторах C# , а также ключевых концепциях ООП (объектно ориентированного программирования) реализованных языке.

Преимущества:

  • Необходимое для начала кол-во материала

Недостатки:

  • В большей мере подходит для тех, кто уже начинал изучать C# , но по каким-то причинам забросил.
  • Есть опечатки.

Прайс. C# 7 и .NET Core. Кросс-платформенная разработка для профессионалов

Книга представляет собой скорее обзор платформы, чем руководство по ней. Поэтому для “глубокого погружения” в .NET Core она, к сожалению, не подойдёт. Но для новичком или программистов, которые уже имеют опыт работы с .Net Framework и желают освоить .NET Core, эта книга идеальный вариант для “Быстрого старта”.

Преимущества:

  • Обзор текущего состояния языка и платформы.
  • Даёт приоритетные знания.
  • Доступное повествование.
  • Много скриншотов.

Недостатки:

  • “Для профессионалов” в заголовке – маркетинговый обман (в оригинальном названии ничего такого нет), это базовый курс по .NET Core.
  • Имеются неточности пошаговых инструкций.
  • Очень тонкий шрифт.

Бонд Д. Г. Unity и C# . Геймдев от идеи до реализации

Помимо стандартного введения в C# и примеров игра книга содержит уникальный раздел посвященный именно проектированию игр. Раздел для геймдизайнеров занимает треть книги и отражаетподходы к преподаванию этой дисциплины автором в вузах США.

Преимущества:

  • Отличное изложение материала.
  • Автор учит рассуждать и строить процесс с учетом сроков, оценки труда разработчика, а также уделяет немалое внимание прототипированию идеи.
  • Сопутствующие материалы доступны на сайте издательства.

Недостатки:

  • Отсутствие полноцветной печати в русской версии.

Троелсен и Джепикс. Язык программирования С# 7 и платформы .NET и NET Core

В 8-м издании книги дано описание функциональных возможностей последних версий C# и .NET, а также межплатформенной инфраструктуры Microsoft .NET Core.

Преимущества:

  • Актуальная информация по платформе .NET Core 2.0 и языку C# 7.1.
  • Описаны платформы ASP.NET Core 2.0 и Entity Framework 2.0.
  • Доходчиво разбирается и сам язык C# , и платформа .NET, и прикладные технологии.
  • Хорошее качество перевода.
  • Большое кол-во примеров и внимание к деталям.

Недостатки:

  • Размер книги (1300 стр.).

Скит. C# для профессионалов. Тонкости программирования.

“C# для профессионалов: тонкости программирования” является обновлением предыдущего издания, ставшего бестселлером. Книга предлагает уникальные сведения о сложных областях и тёмных закоулках языка. Советуем третье издание, оно обычно и дешевле, и в нём лучше перевод.

Преимущества:

  • Считается must have в мире разработки на C# и .NET.
  • Показано, как развивался язык C# , о чём думали его разработчики.
  • Талантливо рассказано простым языком о сложных вещах.
  • Улучшение перевода в сравнении с предыдущими изданиями.

Недостатки:

  • Рассматривается эволюция версий языка C# , но не до текущей версии.

Албахари. C# 7.0. Справочник. Полное описание языка

Это руководство предложит все необходимые ответы тем, у кого возникают вопросы по языку или среде CLR и основным сборкам .NET Framework.

Преимущества:

  • Подробный разбор языка.
  • Затрагиваются все ключевые аспекты языка.
  • Большинство примеров доступны в электронном виде.
  • Высокое качество перевода.

Недостатки:

  • Встречаются экземпляры книги с перепутанными страницами.
  • Среднее качество печати.
  • Не очень подходит в качестве компактного справочника.

Албахари. C# 7.0. Карманный справочник.

Преимущества:

  • Компактная книга, удобно носить.
  • Удобно, если нужно что-то быстро повторить, освежить в памяти.

Недостатки:

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

Хокинг. Unity в действии. Мультиплатформенная разработка на C#

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

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

Преимущества:

  • Постепенное углубление с применениями на практике. Читаем и пишем кода.
  • Разбирается создание геймплея, работа с камерами, ИИ, графика, метаданные, анимации, интерфейсы, сетевой код и т.д.

Недостатки:

  • Тонкая бумага, маркие чернила.
  • Не лучшее качество кода автора.

Продвинутый уровень

Фримен. ASP.NET Core MVC 2 с примерами на C# для профессионалов

В 7-м издании книга обновлена с учетом версии ASP.NET Core MVC 2. Содержатся подробные объяснения функциональности Core MVC, которая позволяет разработчикам выпускать более экономичные, оптимизированные под облако и готовые к функционированию на мобильных устройствах приложения для платформы .NET. Подойдет тем, кто уже уверенно программирует на C# .

Преимущества:

  • Доходчивые объяснения, без лишней воды.
  • Хорошая структурированность книги: немного теории, много практики.
  • Книга описывает процесс создания одного большого MVC-приложения, используя последнюю на данный момент версию платформы, от начала и до конца.

Недостатки:

  • Технология довольно быстро обновляется, не имеет смысла брать книгу «про запас», покупайте только последнее издание.

Windows Presentation Foundation в .NET 4.5 с примерами на C# 5.0 для профессионалов

Платформа Windows Presentation Foundation (WPF) от Microsoft предоставляет инфраструктуру разработки, предназначенную для построения высококачественных пользовательских интерфейсов для операционной системы Windows. Книга начинается с построения прочного фундамента из элементарных концепций, подкрепленного существующими знаниями языка C# . Затем предлагается обсуждение сложных концепций с их демонстрацией на полезных примерах, которые подчеркивают получаемую экономию времени и затраченных усилий.

Преимущества:

  • Хотя книга старовата, в плане WPF мало что поменялось, и книга соответствует описанию.
  • Подробное описание материала.

Недостатки:

  • Версия C# 5, .Net 4.5.
  • Не лучший перевод, тяжеловатый стиль изложения.

Совершенный код, Стив Макконнелл

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

, Роберт К. Мартин

Кажется, это тот случай, когда даже не совсем правильный перевод названия книги (в оригинале «Clean Code: A Handbook of Agile Software Craftsmanship»), вполне чётко отражает её содержимое. Роберт Мартин в своём творении, опираясь на личный опыт и, что даже важнее, конкретные примеры из своей практики, рассказывает о том, как нужно кодить. Принципиальное отличие от книги Макконелла заключается в том, что здесь очень мало статистических обоснований правильности тех или иных действий, только код (занимающий почти треть книги) и рекомендации автора.

Программист-прагматик. Путь от подмастерья к мастеру, Эндрю Хант, Дэвид Томас

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

, Джон Сонмез

Практически каждого программиста привела в профессию любовь к созиданию, удовольствие от созерцания, как символы превращаются программы. Однако есть в этой работе и обратная сторона: высокая конкуренция, сложные отношения с клиентами, коллегами, руководством, финансовая нестабильность. Именно о тёмной стороне работы программиста и о том, как существовать в ладах со всеми этими заботами, рассказывает в своей книге Джон Сонмез.

Структура и Интерпретация Компьютерных Программ, Харольд Абельсон, Джеральд Джей Сассман

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

Алгоритмы. Построение и анализ, Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн

Ещё одна увесистая книга по алгоритмам, впервые изданная в 1990 году в Массачусетском технологическом институте с авторством местных преподавателей. Несмотря на то, что написана она простым и понятным языком, из-за объёма и подачи материала (каждая глава имеет законченный вид) использовать лучше в качестве справочника, периодически обращаясь к нужной информации.

, Майкл Нейгард

От серьёзных и фундаментальных принципов построения кода перейдём непосредственно к практической части создания ПО, а именно юзабилити, производительности, масштабированию, администрированию и далее по списку. Здесь вас ждут реальные примеры из жизни автора, несколько типовых кодов на Java (при этом сам язык никакой роли не играет) и профессиональные советы, как общего плана, так и вполне конкретные по созданию кода.

, Питер Сейбел

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

Мифический человеко-месяц, Хилл Чапел, Фредерик Брукс

Эта книга в США входит в список must-read любого разработчика ПО. Написана она была в далёком 1975 году, но описанные этапы, проблемы и советы по разработке ПО актуальны и по сей день. Вряд ли она будет полезна для человека, который уже несколько лет варится в профессии и на личном опыте знает об этом процессе, а вот студентам и новичкам в IT – прочитать действительно следует.

Не заставляйте меня думать!, Стив Круг

Если «Мифический человеко-месяц» – книга для разработчиков, то это своего рода библия для работников веб-индустрии. Как повысить производительность и привлекательность веб-сайта, советы для новичков, ветеранов и руководителей – всё это можно подчеркнуть из немного ироничной и крайне полезной книги Стива Круга.

Жемчужины программирования, Джон Бентли

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

Карьера программиста. Как устроиться на работу в Google, Microsoft или другую ведущую IT-компанию, Г. Лакман Макдауэлл

Не обращайте внимание на российского название, в оригинале это «Cracking the Coding Interview: 150 Programming Interview Questions and Solution», то есть просто 150 наиболее часто задаваемых вопросов на собеседованиях в крупных IT-компаниях. Ответы, разумеется, прилагаются. Помогает не только потренировать собственный мозг, но и получить представление об образе мышления в Amazon, Apple, Facebook, Google и Microsoft.

Python 3 и PyQt 5. Разработка приложений (2016)

Авторы: Владимир Дронов, Николай Прохоренок
Год: 2016
Язык: Русский

 

Изучаем Java на примерах и задачах (2016)

Автор: Сеттер Р.В.
Год: 2016
Язык: Русский

 

Самоучитель Java с примерами и программами (2016)

Автор: Васильев А.Н.
Год: 2016
Язык: Русский

 

Программирование на Java для детей, родителей, дедушек и бабушек

Автор: Яков Файн
Год: 2011
Язык: Русский

 

«Алгоритмы: построение и анализ» Томас Кормен, Чарльз Лейзерсон

Еще один must have. Хорошо структурированный и очень большой справочник по всем основным алгоритмам с подробными и понятными примерами. Будет полезен как для понимания работы встроенных в языки программирования алгоритмов, так и для проектирования собственных. Книга переиздавалась как минимум три раза: в последнем издании убрали главы о сортирующих сетях и биномиальных кучах и внесены правки в синтаксис псевдокода. Так что для знакомства лучше выбирать более поздние издания –– они значительно актуальнее.

«Искусство программирования» (все тома) Дональд Кнут

Фундаментальный труд, который разрабатывался на протяжении нескольких десятилетий, о математике, глубоких аспектах различных алгоритмов и структур данных. Билл Гейтс сказал об этой книге: «Если вы считаете себя действительно хорошим программистом, прочитайте Искусство программирования

«Сколько стоит программный проект» Стив Макконнелл

Уже вторая книга этого автора в нашей подборке. Очень подробное пособие о том, как рассчитывать сроки разработки программного обеспечения. Современный вариант классического труда Фредерика Брукса «Мифический человеко-месяц», написанного в 1975 году. Поможет научиться реалистично подходить к оценке затрат на разработку продуктов.

«Эмоциональный интеллект» Дэниел Гоулман

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

«Тонкое искусство пофигизма» Марк Мэнсон

Бестселлер, о котором вы, наверняка, слышали. Книга, которая позволит разобраться в себе, в своих ценностях, амбициях и мотивах. Для многих даже заменяет психоаналитика, помогает понять суть и пути решения различных внутренних конфликтов. Если копнуть глубже, принципы позитивного мышления, которые изложены в книге, могут показаться знакомыми и простыми истинами. Но разве мы всегда помним о них в ежедневном потоке дел и прогерских кодов?

«Человеческий фактор: успешные проекты и команды» Том Демарко

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

5. Кэти Сьерра и Берт Бейтс “Изучаем Java”

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

6. Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му “Язык программирования C++. Базовый курс”



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

«Психбольница в руках пациентов» Алан Купер

Книга о том, как создавать доступные интерфейсы и делать программное обеспечение понятным даже для тех, кто далек от компьютерных технологий. Один из важных тезисов –– интерфейс вы создаете для тех, кто будет им пользоваться. Мысль кажется очевидной, но практика показывает, что программист часто может забыть про целевую аудиторию на любом этапе разработки. Как этого не допустить? Как настроить обратную связь и нарисовать портрет ваших пользователей? Что такое метод персон? Книга ответит на эти вопросы и даст любому разработчику +100% к профессиональной эффективности.

Самые рекомендуемые книги для программистов на русском языке

Авторы проекта Dev-Books проанализировали миллионы вопросов и ответов в крупнейшем сообществе программистов Stack Overflow. Всё для того, чтобы найти книги, на которые чаще всего ссылаются разработчики.

В общий список вошло 5 720 книг.

1. «Эффективная работа с унаследованным кодом», Майкл К. Физерс

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

2. «Приёмы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма и другие

Классика для программиста. Первая книга, посвящённая именно шаблонам

— Издание уже 20 лет переиздаётся в изначальном виде. В этом, конечно, главный недостаток книги: некоторые шаблоны уже неактуальны. Думаю, её полезно читать уже после других, более современных, книг по паттернам проектирования. Тем более что она написана сухим академическим языком. Для понимания паттернов эта книга не must read, но её прочтение добавляет крутости в глазах коллег-программистов. :) Начинать я советую с «Паттернов проектирования» (Head First Design Patterns).

3. «Чистый код. Создание, анализ и рефакторинг», Роберт К. Мартин

Интересная, но во многом спорная книга о том, как писать понятный и поддерживаемый код

— Почему спорная? Книг про написание кода уже огромное количество, и часть приёмов являются общепризнанными. Но каждый автор добавляет что-то своё. Лично для меня мнение Боба Мартина кажется иногда странным и противоречащим другим источникам. Не must read, но прочитать всё же стоит. Качество кода после прочтения становится лучше.

4. «Предметно-ориентированное проектирование», Эрик Эванс

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

— Из этой книги выросли концепции СQRS, BDD, onion-architecture и много других интересных идей. Единственный недостаток: книга насквозь теоретическая. Практическую пользу она приобрела только с выходом книги Вона Вернона «Реализация методов предметно-ориентированного проектирования» (Implementing Domain Driven Design). Поэтому читать их надо последовательно, сразу друг за другом.

5. «JavaScript: сильные стороны», Дуглас Крокфорд

Обязательная книга для веб-разработчиков. В ней Дуглас Крокфорд рассказывает о преимуществах языка JavaScript и учит грамотно их применять для создания эффективного кода.

6. «Шаблоны корпоративных приложений», Мартин Фаулер и другие

Книга описывает базовые принципы проектирования ПО для корпоративных платформ.

Источники

  • https://techrocks.ru/2018/12/21/best-books-on-c-plus-plus-language/
  • https://zen.yandex.ru/media/id/5dbd35d495aa9f00b1854aa6/top10-knig-po-c-ot-novichka-do-professionala-5f0e2d0056213a00254c4dcc
  • https://geekbrains.ru/posts/books_for_its
  • https://library-it.com/
  • https://vc.ru/books/123994-top-10-knig-po-programmirovaniyu-dlya-nachinayushchih-ot-profi-svoego-dela
  • https://proglib.io/p/best-programming-books/
  • https://Lifehacker.ru/20-knig-dlya-programmistov/

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Лайфхаки на каждый день, полезные советы
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: