Идеальная подборка книг для разработчиков

0
13490

В этой статье представлены более 100 лучших книг для разработчика по мнению ведущего американского специалиста Йогева Ситтона. Следующий список книг…

 

Предисловие

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

Я уже довольно долго занимаюсь разработкой. Начав с веба в 2004, я стал full-stack разработчиком в 2009 и с 2013 занимаюсь созданием приложением под iOS.

Я погрузился в разработку, прочитав три книги, — одну о HTML, одну о CSS и одну о SQL. Остальное я искал в гугле, на Stack Overflow или в блогах. В этом вся прелесть интернета – он позволял мне, как начинающему разработчику, читать по пять статей ежедневно. Там действительно можно найти качественную информацию подходящего вам уровня БЕСПЛАТНО!

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

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

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

Список книг

Я углубился в изучение этой проблемы и, найдя в общем счете 18 подобных списков, составил один «идеальный», отсортировав его по количеству упоминаний.

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

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

В этом списке вы не найдете книгу о том, как стать Java-разработчиком, зато можете найти книгу, в которой примеры решений будут написаны на Java, что позволит лучше понять всю тему. Вы можете найти книгу по определенному языку, которая подойдет и разработчикам, пишущим на других языках. Я также добавил сюда книги, отвлеченные от разработки, которые, впрочем, считаются полезными для разработчиков (например, «Мифический человеко-месяц, или Как создаются программные системы»).

Итак, без дальнейших отлагательств, я рад представить вам:

Идеальную подборку книг для разработчиков (в порядке возрастания частоты упоминаний)

Популярные технологии разработки

Design Patterns: Elements of Reusable Object-Oriented Software (Приёмы объектно-ориентированного проектирования. Паттерны проектирования)

Design Patterns

Эрих Гамма, Ричард Хелм, Ральф Джонсон, Джон Влиссидс

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

 

 

 

 

 

 

Code: The Hidden Language of Computer Hardware and Software (Тайный язык информатики)

The Hidden Language of Computer Hardware and Software

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

 

 

 

 

 

 

 

 

Working Effectively with Legacy Code (Эффективная работа с унаследованным кодом)

Working Effectively with Legacy Code

Майкл Физерс

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

 

 

 

 

 

Командная разработка

 

Peopleware: Productive Projects and Teams (Человеческий фактор: успешные проекты и команды)

Peopleware

Том ДеМарко, Тим Листер

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

 

 

 

 

 

 

 

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

Patterns of Enterprise Application Architecture

Мартин Фаулер

Научитесь избегать частых ошибок в работе с кодом. Книга изобилует примерами того, когда лучше использовать (или не использовать) тот или иной паттерн. Ее визитная карточка – это каталог шаблонов весьма серьезного уровня.

 

 

 

 

 

 

Introduction to Algorithms (Алгоритмы: построение и анализ)

Introduction to Algorithms

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

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

 

 

 

 

Рефакторинг и оптимизация

 

 

Clean Code: A Handbook of Agile Software Craftsmanship (Чистый код. Создание, анализ и рефакторинг)

Clean Code

Роберт Мартин

Книга, делящая ваш мир кодинга на «до» и «после». Единственная в своем роде. Лучший способ избавиться от вредных привычек в программировании.

 

 

 

 

 

 

 

Refactoring: Improving the Design of Existing Code (Рефакторинг: улучшение существующего кода)

Refactoring: Improving the Design of Existing Code

Мартин Фаулер

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

 

 

 

 

 

 

Философия кодинга

 

The Mythical Man-Month (Мифический человеко-месяц, или Как создаются программные системы)

The Mythical Man-Month

Фредерик Брукс

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

 

 

 

 

 

 

 

The Pragmatic Programmer: From Journeyman to Master (Программист-прагматик. Путь от подмастерья к мастеру)

The Pragmatic Programmer: From Journeyman to Master

Эндрю Хант, Девид Томас

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

 

 

 

 

 

Code Complete: A Practical Handbook of Software Construction

Code Complete: A Practical Handbook of Software Construction

Стив МакКонелл

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

 

 

 

 

 

Весь список состоит из 139 книг и рекомендаций к ним. Вы можете ознакомиться с ним по ссылке.