Найти тему
GeekBrains

10 книг, которые обязан прочитать каждый программист

Оглавление

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

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

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

Эндрю Таненбаум «Архитектура компьютера»

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

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

Джейсон Шрейер «Кровь, пот и пиксели. Обратная сторона индустрии видеоигр»

Почему Blizzard чуть с треском не провалился после выпуска Diablo III? Как Halo стала стратегией? Как сложилась судьба студии, создавшей Uncharted? Ответы на эти вопросы, а также все, что вы хотели знать о разработке Witcher-3 и Destiny, и еще множество других эксклюзивных историй автор книги узнал напрямую от тех, кто разрабатывал самые популярные игры последнего десятилетия.

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

Максим Дорофеев «Джедайские техники»

Программированию эта книга не учит, но без тех навыков и умений, о которых в ней рассказывается – умении концентрироваться, учиться, эффективно применять свои знания – стать настоящим разработчиком будет сложно. Автор рассказывает о том, как устроено мышление человека, как работает его память, как правильно ставить задачи и набираться сил для продуктивной работы, можно ли применять полученные знания в жизни и как не наступать на одни и те же грабли. На эту тему у Максима Дорофеева есть еще одна книга «Путь джедая».

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

Освоить за год программирование – серьезное достижение. Но Кори Альтхофф решил, что этого мало, и после того, как научился программировать, пошел и устроился на работу в компанию Ebay разработчиком кодов. Как ему удалось стать сотрудником одной из самых крупных современных IT-компаний – читайте в этой книге. Здесь же рассказывается об уникальной авторской методике изучения программирования на языке Python. Изучайте, применяйте на практике – и у вас тоже многое получится!

С. Макконнелл «Совершенный код»

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

Достаточно сказать, что для размещения библиографии книги потребовалось 20 страниц, на которых подробно указаны более 500 источников. «Совершенный код» – одно из самых полезных и полных изданий по разработке ПО. Его популярность обозначена стабильной верхней строчкой любого рейтинга книг по программированию. Доступное изложение, особый стиль и чувство юмора автора помогают легко осилить почти тысячу страниц его произведения.

М. Фаулер «Рефакторинг»

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

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

Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес «Паттерны проектирования»

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

Р. Мартин «Чистый код»

«Чистый код» – это 360 страниц увлекательного описания процесса создания высококачественного кода. Книга написана простым, доступным языком, легко читается, что крайне важно при объяснении столь сложной темы. Добрый друг всех разработчиков, «дядюшка» Боб доверительно делится секретами о том, по каким принципам составляется хороший код. В книге очень много примеров из реальных приложений, с которыми автор имел дело в своей практике. Это такие известные продукты, как JUnit, FitNesse, JDepend, Ant и TomCat.

Д. Кнут «Искусство программирования»

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

По версии журнала «American Scientist» академическое издание Кнута, наряду с работой Эйнштейна по теории относительности, входит в список 12 лучших физико-математических монографий XX века. Книга получила всемирное признание благодаря высокому качеству изложения и глубине анализа общих вопросов программирования.