20 самых рекомендуемых книг для программистов на русском языке
В общий список вошло 5 720 книг. Ниже вы найдёте 20 самых упоминаемых из них, которые когда-либо выходили на русском.
По просьбе Лайфхакера своими мнениями насчёт некоторых изданий поделились отечественные эксперты.
1. «Эффективная работа с унаследованным кодом», Майкл К. Физерс
Автор объясняет, как быстро разбираться в унаследованном коде, как тестировать его, как правильно вносить изменения. Книга содержит множество эффективных приёмов, предназначенных специально для этих задач.
2. «Приёмы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма и другие
Классика для программиста. Первая книга, посвящённая именно шаблонам.
Леонид Выговский
системный архитектор IT-компании LiveTex
— Издание уже 20 лет переиздаётся в изначальном виде. В этом, конечно, главный недостаток книги: некоторые шаблоны уже неактуальны. Думаю, её полезно читать уже после других, более современных, книг по паттернам проектирования. Тем более что она написана сухим академическим языком. Для понимания паттернов эта книга не must read, но её прочтение добавляет крутости в глазах коллег-программистов. :) Начинать я советую с «Паттернов проектирования» (Head First Design Patterns).
3. «Чистый код. Создание, анализ и рефакторинг», Роберт К. Мартин
Интересная, но во многом спорная книга о том, как писать понятный и поддерживаемый код.
Леонид Выговский
системный архитектор IT-компании LiveTex
— Почему спорная? Книг про написание кода уже огромное количество, и часть приёмов являются общепризнанными. Но каждый автор добавляет что-то своё. Лично для меня мнение Боба Мартина кажется иногда странным и противоречащим другим источникам. Не must read, но прочитать всё же стоит. Качество кода после прочтения становится лучше.
4. «Предметно-ориентированное проектирование», Эрик Эванс
Очень сильная книга, которая мотивирует к саморазвитию. После прочтения кажется, что без ПОП качественный код не написать.
Леонид Выговский
системный архитектор IT-компании LiveTex
— Из этой книги выросли концепции СQRS, BDD, onion-architecture и много других интересных идей. Единственный недостаток: книга насквозь теоретическая. Практическую пользу она приобрела только с выходом книги Вона Вернона «Реализация методов предметно-ориентированного проектирования» (Implementing Domain Driven Design). Поэтому читать их надо последовательно, сразу друг за другом.
5. «JavaScript: сильные стороны», Дуглас Крокфорд
Обязательная книга для веб-разработчиков. В ней Дуглас Крокфорд рассказывает о преимуществах языка JavaScript и учит грамотно их применять для создания эффективного кода.
6. «Шаблоны корпоративных приложений», Мартин Фаулер и другие
Книга описывает базовые принципы проектирования ПО для корпоративных платформ.
7. «Совершенный код. Мастер-класс», Стив Макконнелл
Классическая книга о том, как писать код лучше.
Михаил Осотов
директор по производству «Центра высоких технологий»
— Принципы, о которых рассказывается в книге, актуальны в любые времена, несмотря на то, что первое издание было выпущено аж в 1993 году. Волшебство этой книги заключается в том, что можно перечитывать её каждый год и каждый раз узнавать что-то новое.
8. «Рефакторинг. Улучшение существующего кода», Мартин Фаулер и другие
Из серии книг по написанию понятного и качественного кода, «Рефакторинг» — лучшая.
Леонид Выговский
системный архитектор IT-компании LiveTex
Выговский: «Она не только показывает хороший код, но и на примере плохого объясняет, чем именно он плох. Эта книга — must read для всех. Причём чем раньше вы её прочтёте, тем лучше. Качество кода после прочтения сильно вырастет».
Если книгу Фаулера вы уже прочли, обратите внимание на «Рефакторинг с использованием шаблонов» (Refactoring to Patterns) Джошуа Кериевски, которую рекомендует Михаил Осотов.
«Рефакторинг с использованием шаблонов» Кериевски — отличная книга для тех, кто каждый день сталкивается с проблемой легаси-кода и технического долга в своих проектах.
Михаил Осотов
директор по производству «Центра высоких технологий»
— Эта книга поможет сохранить свои нервы, подружиться с рефакторингом и сделать код лучше.
9. «Паттерны проектирования», Эрик Фримен, Элизабет Фримен и другие
Серия Head First, на мой взгляд, идеально подходит для новичков в области разработки ПО.
Михаил Осотов
директор по производству «Центра высоких технологий»
— Все книги написаны разными авторами, но в каждой виден общий подход, который выражается в простой подаче материала, интересных и простых примерах.
10. «Язык программирования C», Брайан У. Керниган, Деннис М. Ритчи
Классическое учебное пособие по языку C, написанное его же создателями. Однако начинающим эта книга может показаться сложной, поскольку требует от читателя знания основ программирования.
11. «Эффективное использование С++. 55 верных способов улучшить структуру и код ваших программ», Скотт Майерс
Книга содержит советы по проектированию программ, работе с шаблонами и управлению ресурсами, а также другие рекомендации по созданию качественного ПО на языке С++.
12. «Экстремальное программирование: разработка через тестирование», Кент Бек
Автор на примерах описывает методику разработки ПО, которая предполагает тестирование программ ещё до написания их кода.
13. «Алгоритмы. Построение и анализ», Томас Х. Кормен и другие
Эту книгу называют библией алгоритмов. Она зарекомендовала себя как отличное научное пособие для студентов технических вузов и всех, кто интересуется информатикой. Книга доступным языком знакомит с алгоритмами разных типов и описывает их особенности.
14. «Регулярные выражения», Джеффри Фридл
Издание об эффективной работе с текстом в Perl, PHP, Java, Python, Ruby и других языках программирования.
15. «CLR via C#. Программирование на платформе Microsoft.NET Framework 4.5 на языке C#», Джеффри Рихтер
Классический учебник по разработке приложений для платформы Microsoft, в том числе с помощью Silverlight, Windows Presentation Foundation, ASP.NET и прочих технологий компании.
16. «Современное проектирование на C++», Андрей Александреску
Книга для опытных программистов на C++. Автор предлагает новый подход к разработке, сочетающий метапрограммирование шаблонов, обобщённое программирование и объектно-ориентированное программирование на этом языке.
17. «Microsoft ASP.NET 2.0. Базовый курс», Дино Эспозито
Детальное руководство для опытных специалистов по ASP.NET 2.0. Книга учит создавать мощные, надёжные и масштабируемые сайты на этой платформе.
18. «Шаблоны тестирования xUnit. Рефакторинг кода тестов», Джерард Месарош
Автор книги показывает, как применять шаблоны проектирования, исключение повторений, инкапсуляцию и другие принципы разработки ПО к написанию кода тестов.
19. «Компиляторы. Принципы, технологии и инструментарий», Альфред В. Ахо и другие
Книга описывает базовые принципы разработки компиляторов и делает особый акцент на оптимизации кода. В помощь читателю — большое количество примеров из практики.
20. «Инфраструктура программных проектов. Соглашения, идиомы и шаблоны для многократно используемых библиотек .NET», Кржиштоф Цвалина, Брэд Абрамс
Издание содержит лучшие приёмы разработки библиотек для платформы Microsoft .NET Framework. Книга должна упростить работу любого .NET-специалиста, который пишет код для других разработчиков.
Полный рейтинг англоязычных книг доступен на сайте Dev-Books. Там же можно просмотреть списки самых популярных книг на определённые темы, будь то Java, Database Design или CSS.
Лучшие предложения
10 практичных и недорогих тумб под телевизор
Цена дня: утеплённая парка GSD всего за 4 335 рублей
3 больших холодильника Hisense для современной кухни
10 полезных вещей для дома с оригинальным дизайном
10 стильных вещей из экокожи на каждый день
Находки AliExpress: 10 товаров, которые пригодятся на каждой кухне
10 аромасвечей не дороже 500 рублей, которые наполнят комнату уютом
10 занимательных деревянных пазлов
Будущее на зарядке. Что нужно знать об электрокарах
Год Fashion на Ozon. Как зарабатывать на моде
Какой вирусный видеотренд вам подходит?
Как сделать микроклимат в доме безопасным для ребёнка: 4 совета родителям