Написать пост

Топ-25 самых рекомендуемых книг по программированию

Аватар Никита Прияцелюк

Нашли для вас труд одного программиста, который составил список самых рекомендуемых книг, проанализировав десятки подобных списков.

В интернете полно списков «Лучших книг по программированию за всё время» и многие из них советуют разные (не всегда хорошие) книги. Один программист решил узнать, какие книги рекомендуют чаще всего. Для этого он взял все эти списки, проанализировал их и выложил свою мета-подборку из 25 книг. Делимся ей с вами.

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

Немного о методологии

Автор загуглил что-то вроде «лучшие книги по программированию» и собрал найденные ссылки. После удаления дубликатов осталось 150 штук. По заголовкам страниц автор также сразу отбросил списки книг:

  • связанные с конкретной технологией/платформой;
  • привязанные к конкретному году;
  • состоящие только из бесплатных книг;
  • а также треды с Quora и Reddit.

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

Примечание Более подробное описание с примерами кода можно найти в оригинале статьи.

25 место

«Continuous Delivery», Jez Humble & David Farley

«Continuous Delivery», Jez Humble & David Farley

24 место

«Алгоритмы на Java», Роберт Седжвик, Кевин Уэйн

«Алгоритмы на Java», Роберт Седжвик, Кевин Уэйн

23 место

«Сам себе программист. Как научиться программировать и устроиться в Ebay?», Кори Альтхофф

«Сам себе программист. Как научиться программировать и устроиться в Ebay?», Кори Альтхофф

22 место

«Rapid Development», Steve McConnell

«Rapid Development», Steve McConnell

21 место

«Кодеры за работой. Размышления о ремесле программиста», Питер Сейбел

«Кодеры за работой. Размышления о ремесле программиста», Питер Сейбел

20 место

«Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем», Эрик Эванс

«Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем», Эрик Эванс

19 место

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

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

18 место

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

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

17 место

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

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

16 место

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

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

15 место

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

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

14 место

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

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

13 место

«Код. Тайный язык информатики», Чарльз Петцольд

«Код. Тайный язык информатики», Чарльз Петцольд

12 место

«Не заставляйте меня думать. Веб-юзабилити и здравый смысл», Стив Круг

«Не заставляйте меня думать. Веб-юзабилити и здравый смысл», Стив Круг

11 место

«Путь программиста», Джон Сонмез

«Путь программиста», Джон Сонмез

10 место

«Карьера программиста», Г. Лакман Макдауэлл

«Карьера программиста», Г. Лакман Макдауэлл

9 место

«Приемы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма, Джон Влисидис, Ричард Хелм, Ральф Джонсон

«Приемы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма, Джон Влисидис, Ричард Хелм, Ральф Джонсон

8 место

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

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

7 место

«Идеальный программист. Как стать профессионалом разработки ПО», Роберт Мартин

«Идеальный программист. Как стать профессионалом разработки ПО», Роберт Мартин

6 место

«Мифический человеко-месяц», Фредерик Брукс

«Мифический человеко-месяц», Фредерик Брукс

5 место

«Head First. Паттерны проектирования», Эрик Фримен, Элизабет Робсон

«Head First. Паттерны проектирования», Эрик Фримен, Элизабет Робсон

4 место

«Рефакторинг. Улучшение существующего кода», Мартин Фаулер

«Рефакторинг. Улучшение существующего кода», Мартин Фаулер

3 место

«Совершенный код. Мастер-класс», Стив Макконнелл

«Совершенный код. Мастер-класс», Стив Макконнелл

2 место

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

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

1 место

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

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

152К открытий152К показов