Как стать автором
Обновить

Минимум книг, которые нужно прочитать начинающему или продолжающему свою кривую обучения программисту

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров49K

Предисловие

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

База Computer Science

Теоретический минимум по Computer Science (Владстон Феррейра Фило)

alt text
Теоретический минимум по Computer Science

Это супер-базированная книга, которая подойдёт как стартовая особенно тем, кто не получил профильного образования.

Видео-курс CS50

Видео-курс CS50
Видео-курс CS50

Это не книга, но возможно, лучшее, что вы сможете найти для обучения базе. Это великолепный гарвардский курс, на примере которого вы поймёте, почему люди стремятся попасть на учёбу в такие места как Гарвард. Видео-курс можно найти в открытом доступе в Интернете на русском языке и более полную официальную версию.

Можно также получить сертификаты о его прохождении онлайн на edx.org или на сайте Гарварда. Курс регулярно обновляется, поэтому если начали, лучше закончить в тот же год.

Программирование

Объектно-ориентированное мышление (Мэтт Вайсфельд)

alt text
Объектно-ориентированное мышление

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

Паттерны проектирования (Эрик Фримен, Элизабет Робсон и другие)

alt text
Паттерны проектирования

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

Чистый код (Роберт Мартин)

alt text
Чистый код

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

Экстремальное программирование. Разработка через тестирование (Кент Бек)

alt text
Экстремальное программирование

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

Алгоритмы и структуры данных

Грокаем алгоритмы (Адитья Бхаргава)

alt text
Грокаем алгоритмы

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

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

alt text
Карьера программиста

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

System Design

System Design (Алекс Сюй)

alt text
System Design

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

High Load

Высоко-нагруженные приложения (Мартин Клеппман)

alt text
Высоко-нагруженные приложения

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

Менеджмент

Делай как в Google (Титус Винтерс, Том Маншрек, Хайрам Райт)

alt text
Делай как в Google

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

Agile. Оценка и планирование проектов (Майк Кон)

alt text
Agile. Оценка и планирование проектов

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

Послесловие

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

Теги:
Хабы:
+52
Комментарии84

Публикации

Истории

Ближайшие события

4 – 5 апреля
Геймтон «DatsCity»
Онлайн
8 апреля
Конференция TEAMLY WORK MANAGEMENT 2025
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область