10 книг по программированию, которые непременно нужно прочесть

Перевод статьи «10 Programming Books you Need to Read».

10 книг по программированию

Порой нам хочется выйти на следующий уровень в мастерстве программирования, но мы не знаем, с чего начать. Я сам пережил нечто подобное: чувствовал, что должен что-то делать, но не знал, что читать или что учить.

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

1. «Чистый код. Создание, анализ и рефакторинг»

Чистый код

Книга «Чистый код» (англ. «Clean code: A Handbook of Agile Software Craftsmanship, автор — Роберт Сесил Мартин, «Дядя Боб») это одна из лучших книг, которые мне довелось читать в моей профессиональной жизни. После прочтения этой книги вы гораздо глубже осознаете необходимость написания именно чистого кода, и я готов поспорить, что к прежнему восприятию вы уже не вернетесь.

Эта книга раскрывает все темы, нужные для феноменального улучшения вашего кода.

2. «Чистая архитектура. Искусство разработки программного обеспечения»

Чистая архитектура

Книгу «Чистая архитектура» Дяди Боба (англ. «Clean Architecture: A Craftsman’s Guide to Software Structure and Design»), как и «Чистый код», обязательно должен прочесть каждый программист. Она невероятным образом улучшит ваши умения по структуризации и проектированию программ, а кроме того поможет достичь высокого уровня поддерживаемости и правильности вашего продукта.

3. «Грокаем алгоритмы»

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

​Книга «Грокаем Алгоритмы» Адитьи Бхаргавы (англ. «Grokking Algorithms: An illustrated guide for programmers and other curious people») это замечательное и при этом простое объяснение самых широко используемых в информатике алгоритмов. Ее так легко читать, что даже не-программисты смогут разобраться, как работают описанные в ней алгоритмы.

4. «Паттерны проектирования»

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

Шаблоны проектирования это удобный инструмент, которым стоит овладеть. Авторы этой замечательной книги — Эрик Фримен, Элизабет Робсон, Кэти Сьерра, Берт Бейтс. В оригинале книга называется «Head First Design Patterns: A Brain-Friendly Guide».

5. «Экстремальное программирование. Разработка через тестирование»

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

Автор этой книги — Кент Бек, название в оригинале — «Test-driven development by example».

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

6. «Путь программиста. Человек эпохи IT»

Путь программиста

Книга Джона Сонмеза (в оригинале называется «Soft Skills: The software developer’s life manual») поможет вам достичь хорошего баланса технических навыков и т. н. soft skills (их можно считать навыками общения с людьми и сотрудничества). Soft skills важны для достижения успеха в профессиональной жизни, потому что для того чтобы создать нечто потрясающее, вам придется взаимодействовать с окружающими.

7. «Cracking the Coding Interview: 189 Programming Questions and Solutions»

Cracking the Coding Interview: 189 Programming Questions and Solutions

Эта книга создана специально, чтобы помочь людям в подготовке к техническим собеседованиям. Каждый программист по сут является «решателем проблем», а советы из этой книги нацелены на развитие именно этих навыков. В русском переводе книга называется «Карьера программиста», автор — Г. Лакман Макдауэлл.

8. «Семь языков за семь недель»

Семь языков за семь недель

Книга Брюса Тейта (оригинальное название — «Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages») помогает понять преимущество знания нескольких языков программирования. Прочитав эту книгу, вы расширите свое понимание решения проблем. В процессе чтения книги вы познакомитесь с такими языками как Clojure, Haskell, Io, Prolog, Scala, Erlang и Ruby.

9. «Programming Elixir»

Programming Elixir

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

Несмотря на то что эта книга о конкретном языке, я все равно советую ее всем, потому что Elixir это функциональное программирование в чистом виде (т. е., другая парадигма).

Написал эту книгу Дэйв Томас.

10. «Go Programming Blueprints»

Go Programming Blueprints

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

[customscript]techrocks_custom_after_post_html[/customscript]

[customscript]techrocks_custom_script[/customscript]

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх