Из всего многообразия книг по программированию начинающим разработчикам может быть непросто выбрать лучшие. Сандор Дарго собрал 8 топовых книг, они наверняка пойдут на пользу и сеньорам.
Я люблю читать. В школе я листал автомобильные журналы и лишь изредка брался за те книжки, которые меня очень увлекали. Но в университете я начал покупать и читать очень много книг: я стал инвестировать в себя.
Когда у меня появился стабильный заработок, я решил покупать по книге в месяц, а потом даже больше. Приходилось выбрасывать вещи из комнаты, чтобы было куда сложить книги. Раньше я много читал, пока добирался на работу. Чтение помогает мне расслабиться, даже если это техническая литература. Люблю читать перед сном, утром после сна или пока обедаю — при желании всегда можно найти немного времени.
Некоторые считают потребность в чтении такой же естественной, как и потребность в еде или дыхании, и я полностью согласен с ними. На какую бы тему я ни говорил с людьми, я сразу задумываюсь, что читал по ней и что мог бы им порекомендовать. Так у меня появилась идея собрать книги, которые могут помочь младшим разработчикам сделать следующий шаг в карьере. Если просто несколько лет сидеть на одном месте, то никаких позитивных сдвигов можно не ожидать: нужно заставлять себя учиться и практиковаться.
Вот 8 лучших книг, которые действительно заслуживают вашего внимания.
1. «Совершенный код», Стив Макконнелл
Эту книгу по разработке программного обеспечения мне посоветовал один менеджер, когда я был младшим разработчиком. Она достаточно известна и просто обязательна к прочтению. Здесь можно найти много приёмов написания читабельного и удобного в поддержке кода с большим количеством примеров. Я бы рекомендовал начинать именно с этой книги.
2. «The Software Craftsman: Professionalism, Pragmatism, Pride», Сандро Манкусо
Эта книга резко отличается от предыдущей. Автор не рассказывает о том, как писать качественный код, а заставляет вас абсолютно по-новому взглянуть на свою профессию. Не на работу, а на профессию. Разработчики ПО — высокообразованные люди, и их труд нелёгок. Но всё же многие из нас относятся к себе, как к рабочим за конвейером — без какого-либо уважения к профессии. Многие разработчики не стремятся стать профессионалами, не стремятся самосовершенствоваться. Эта книга научит вас правильному мышлению и поможет достичь невероятных высот в карьере. Она будет полезна не только разработчикам, но и всем остальным менеджерам.
3. «Чистый код. Создание, анализ и рефакторинг», Роберт Мартин
В этой книге вы узнаете о том, как отличать плохой код от хорошего и его исправить. Только не забывайте, что превращать нужно плохой код в хороший, а не наоборот! Много внимания автор уделил тому, как форматировать код, чтобы его было удобно максимально читать, и как осуществлять функциональное тестирование и разработку через тестирование (TDD).
4. «Growing Object-Oriented Software, Guided by Tests», Стив Фриман
Следующей на тему тестирования и TDD можно прочесть эту книгу. Здесь подробно описаны принципы объектно-ориентированного проектирования через тестирование на примере пошаговой разработки приложения для тендеров.
5. «Идеальный программист. Как стать профессионалом разработки ПО», Роберт Мартин
Эта книга Дядюшки Боба не такая техническая — в ней больше рассмотрен человеческий аспект профессии программиста. Технари обычно не придают этому большого значения, но взаимодействовать нам в основном приходится всё же не с компьютером, а с людьми. Чем лучше вы ладите с людьми, в том числе с собой, тем быстрее продвинетесь по карьерной лестнице.
6. «Рефакторинг. Улучшение существующего кода», Мартин Фаулер
Большинство разработчиков предпочитает работать над проектами с нуля, потому что в старом коде может встречаться много ошибок (кстати, если код старый, это не обязательно значит, что он некачественный). Но если задуматься, то основную часть рабочего времени мы занимаемся поддержкой кода и исправлением багов за его автором, даже если этот автор — мы сами. В данной книге рассказано, как можно улучшить старый код с помощью рефакторинга.
7. «Эффективная работа с унаследованным кодом», Майкл Физерс
Итак, большую часть времени мы тратим на сопровождение уже существующего кода, который ещё и недостаточно тестировали. Если вы профессионал и просто не можете позволить себе пройти мимо ошибок, то вам придётся научиться подчищать исходный код за теми, от кого его унаследовали. Эту книгу нужно не просто читать, но и держать под рукой, когда исправляете очередной баг.
8. «The Complete Software Developer's Career Guide», Джон Сонмез
И напоследок нетехническая книга. Краткое 800-страничное руководство для тех, кто хочет построить карьеру в разработке ПО. Независимо от того, на каком этапе своей профессиональной жизни вы находитесь, вы обязательно вынесете что-то полезное из этой книги. В крайнем случае она ещё раз обратит ваше внимание и поможет закрепить те вещи, о которых вы уже имели какое-то представление. Помните, что разработчики — это люди, и им важно уметь не только быстро обучаться, но и общаться с окружающими. Массивная, но довольно увлекательная книга.
Если вы осилите все эти книги за полгода-год, будете применять полученную информацию на практике и превратите её в знание, то добьётесь успеха гораздо быстрее большинства разработчиков, которые не читают или читают очень мало.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Хорошая подборка