В мире программирования техники и методики постоянно меняются, но фундаментальные принципы, описываемые в книгах, остаются неизменными. Представляем вашему вниманию подборку книг, которые не имеют привязки к языкам и отраслям кодинга, а охватывают общие темы: алгоритмы, структуры данных, шаблоны проектирования, рефакторинг.
Эти произведения помогут вам развить навыки критического мышления, подготовят к собеседованиям и станут отличным фундаментом для дальнейшей карьеры.
Наш топ:
«Программист-прагматик»
«Чистый код»
«Совершенный код»
«Грокаем алгоритмы»
«Искусство программирования»
«Карьера программиста»
«Паттерны объектно-ориентированного проектирования»
«Паттерны проектирования»
«Чистая архитектура. Искусство разработки программного обеспечения»
«Идеальный программист. Как стать профессионалом разработки ПО».
«Программист-прагматик»
Авторы: Дэвид Томас, Эндрю Хант.

Отличное пособие для кодеров, стартующих в профессии без наставника, но желающих научиться писать код. В книге собрано все, что нужно для успешного старта — от основ делового этикета до полезных советов по написанию качественного кода.
Если хотите стать настоящим профессионалом, эта книга — идеальный выбор для начала пути. В конце – 50 советов-заповедей программиста.
«Чистый код»
Автор: Роберт Мартин.

Новички наивно полагают, что раз софт работает – все отлично, дальше париться не нужно. К чему продумывать структуру классов, обрабатывать граничные условия и заниматься остальными «мелочами»?
Роберт Мартин уверяет нас в обратном: только внимание к нюансам и идеальная программная чистоплотность превратят вас в топ-специалиста. Автор наглядно показывает, как разумно проектировать архитектуру ПО и генерить чистый код.
«Совершенный код»
Автор: Стив Макконнелл.

Еще одна книга про идеальный код. Одна из основных мыслей здесь – на отладку кода тратится наибольшее количество времени, а его качество становится определяющим в вопросе объема расходов на создание.
В книге Макконелл детально поясняет, как писать, тестировать, выполнять отладку и рефакторинг кода. Читатель узнает, как применять подходящие переменные, называть их, какие есть методики разработки.
Внушительное по объему (почти 900 страниц) произведение «приправлено» юмором, что облегчает восприятие.
«Грокаем алгоритмы»
Автор: Адитья Бхаргава.

Интересная и полезная книга, позволяющая новичку плавно познакомиться и познать алгоритмы. Это увлекательное чтиво для начинающих кодеров, которые имеют об алгоритмах поверхностные знания или не имеют совсем.
Что с названием? «Грокнуть» (от англ. to grok) – в переводе «всесторонне понять». Этим и занимается Бхаргава – проникает в самую суть сортировки и поиска, дает примеры, упражнения, иллюстрирует написанное.
«Искусство программирования»
Автор: Дональд Кнут.
Прим.: у 3-го издания на английском языке – 7 томов, из них лишь 4 переведены на русский.

Фундаментальный труд американского математика Дональда Кнута рассчитан на опытных юзеров. Первая книга – даже больше про математику, чем программирование: автор полагает, что читатель должен понять основы, прежде чем идти дальше.
В дальнейшем Кнут учит анализировать алгоритмы, дает идеальные решения дефолтных задач. Читать и воспринимать произведение довольно сложно – не дадут соврать даже опытные кодеры.
«Карьера программиста»
Автор: Гейл Лакман Макдауэлл.

Это уже 6-е издание книги, в котором автор учит подготовке к собеседованию с работодателем. Конечно, все ситуации индивидуальны, но к советам стоит прислушаться – автор в течение нескольких лет интервьюировала в Apple, Google и Microsoft.
Здесь нет советов, как улыбнуться и что сказать. Макдауэлл прорабатывает почти 200 вопросов, которые могут застать вас врасплох на интервью.
«Паттерны объектно-ориентированного проектирования»
Авторы: Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес

Паттерны проектирования — своего рода шаблоны или алгоритмы для кодинга под различные цели. Авторы рассматривают популярные шаблоны, повествуют о лучших вариантах их применения на примере настоящих проектов.
«Паттерны проектирования»
Авторы: Э Фримен, Э. Робсон, К. Сьерра, Б. Бейтс.

В отличие от предыдущей книги, данное творение воспринимается и усваивается намного проще. Создатели произведения смогли достичь оптимального баланса между трудностью концепций и легкостью подачи информации.
«Чистая архитектура. Искусство разработки программного обеспечения»
Автор: Роберт Мартин.

Здесь идет речь о важном скилле системы – меняться под новые запросы. Именно чистая архитектура дает возможность обеспечить такие изменения.
Читатели отмечают простой язык книги: в ней нет большого количества мудреных примеров и специфической информации, доступной лишь тем, кто «в теме».
«Идеальный программист. Как стать профессионалом разработки ПО»
Автор: Роберт Мартин.

Закрываем подборку 3-й книгой Роберта Мартина. Она объединяет практические рекомендации по профессиональной деятельности кодеров с полезными советами для эффективной работы в коллективе.
Книга является грамотным руководством для программистов в ситуациях, когда нужно оценить сложность задачи или объяснить заказчику, что дедлайн нужно сдвинуть из-за нереалистичности текущих сроков.
Заключение
Предложенный список можно продолжать долго – достойных книг по программированию хватает. Если в совершенстве владеете английским, рекомендуем читать их в оригинале. Также приглашаем на курсы Академии ТОП по программированию, где теория тесно переплетается с практикой.