Must read. Книги, которые желательно прочитать каждому программисту

В наш век электронных носителей информации всё ещё остаются актуальными старые добрые «бумажные» книги.

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

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

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

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

Также не исключено, что со временем наш список будет редактироваться.

Итак, начнём.

Алгоритмы и структуры данных
  • Д. Кнут. Искусство программирования

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

Изначально Д. Кнут планировал данную книгу в семи томах. Первые три тома были впервые изданы в период с 1968 по 1973 год. Работа над остальными не завершена до сих пор (с 2005 по 2015 годы была издана только часть четвёртого тома).

По сути, уже более 50 лет эта книга является краеугольным камнем в мире алгоритмов и структур данных. Сложно назвать более-менее серьёзную даже самую современную работу в этой области, которая не опиралась бы на «Искусство программирования».

В своей книге Д. Кнут приводит много математических выкладок и примеров на ассемблере MIX. Поэтому «входной порог» в плане познаний для неё достаточно высок, да и цена магазинах у неё далеко не дешёвая. Но, оно того стоит.

Архитектура, паттерны
  • Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес. Приёмы объектно-ориентированного проектирования. Паттерны проектирования (Design Patterns)

Не нуждающаяся в представлении книга «банды четырёх».

Первое издание увидело свет в 1994 году и с тех пор книга неоднократно переиздавалась (и сейчас переиздаётся).

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

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

  • Мартин Фаулер. Архитектура корпоративных программных приложений (Patterns of Enterprise Application Architecture, PEAA)

Вторая фундаментальная работа по паттернам проектирования. Первое издание вышло в 2001 году.

В книге Фаулера описываются более современные и сложные паттерны. Но, значительная, если не большая их часть находит применение только в сфере Enterprise, в то время как паттерны «банды четырёх» практически универсальны (за редким исключением).

Технология разработки программного обеспечения
  • Стив Макконнелл. Совершенный код

По праву считается один из наиболее исчерпывающих руководств по технологии разработки программного обеспечения.

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

Прочее
  • Р. Мартин. Идеальный программист

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

В каком-то смысле эту книгу можно считать наивной, т.к. в некоторой степени в ней излагаются идеи автора по ряду вопросов. Кроме того, автор живёт в США и в своём повествовании во многом исходит из местных реалий.

Но, тем не менее прочитав книгу можно найти в ней много полезного.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *