Литература для программирования

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

Первое, что вы, вероятно, обнаружите,—это то. Что этот список не является одним из типичных списков “книг для программистов”. Которые вы найдете в Интернете. И это хорошо!

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

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

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

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

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

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

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

Это не сухое собрание технических книг…

Наслаждайтесь!

Оглавление – Ссылки На Книги По Типу:

Основополагающие книги по программированию

Книги по программированию профессионального развития

Книги по программированию на основе архитектуры

Книги по гибкому программированию

Книги по программированию алгоритмов и вопросов интервью

Книги по программированию, ориентированные на конкретные языки и связанные с ними Языки программирования

Книги по программированию, связанные с OPs, QA и развертыванием

Мягкие Навыки и Другие Забавные Книги По программированию

Основополагающие книги по программированию

Code Complete: A Practical Handbook of Software Construction, Второе издание

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

Чистый код: Руководство по гибкому программному мастерству

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

Структура и интерпретация компьютерных программ, Второе издание

Я обсуждал вопрос о включении этой книги в список. Действительно ли она основополагающая? Все зависит от того, какой прочный фундамент вы хотите иметь. Если вы хотите иметь действительно прочную основу, то ответом будет громкое “да.”

Я раздумывал, не включить ли и это в список. Действительно ли она основополагающая? Все зависит от того, какой прочный фундамент вы хотите иметь. Если вы хотите иметь действительно прочную основу, то ответом будет громкое “да.”

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

Шаблоны проектирования Элементов многоразового объектно-ориентированного программного обеспечения

Шаблоны проектирования: Элементы многоразового объектно-ориентированного программного обеспечения

Эта классическая книга-критическое чтение, чтобы действительно понять, что такое шаблоны проектирования. И познакомиться с наиболее распространенными шаблонами проектирования. С которыми вы, вероятно. Столкнетесь в своей карьере. Это не особенно легкое чтение. И описания и примеры могут быть немного трудными для понимания—особенно если у вас нет твердого понимания UML,—но это книга. Которую я считаю “обязательным чтениемЕсли у вас возникли проблемы с этой книгой. Вы можете начать с “Head First Design Patterns”. Которая учит моделям дизайна в этой книге гораздо более удобоваримым способом—тем не менее. Нет никакой замены оригиналу.

Head First Design Patterns: A Brain-Friendly Guide

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

Рефакторинг: Улучшение дизайна существующего кода

Несмотря на то. Что современные IDE автоматизировали многие из рефакторингов, упомянутых в этой книге. Рефакторинг по—прежнему является очень важной концепцией. Которую необходимо понять. Чтобы написать хороший. Чистый код-особенно в современных гибких средах. Эта книга охватывает почти все основные рефакторинги, которые все разработчики программного обеспечения должны знать. Как выполнять в любой базе кода. Обучение рефакторингу кода позволяет вдохнуть в него новую жизнь и улучшить его с течением времени, а не гнить.

Эффективная Работа С Устаревшим Кодом

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

Искусство компьютерного программирования, Тома 1-4А

Могу ли я действительно рекомендовать серию книг. Которую никогда не читал? Конечно, могу. Этот четырехтомник был в моем списке книг “когда-нибудь прочитаю”, но я так и не нашел его.

Почему? Потому что чтение этих книг-огромное дело. В этих книгах подробно и подробно рассматриваются алгоритмы вычислительной техники—и не самые простые вещи. Если вы действительно, действительно хотите углубиться в алгоритмы и готовы к тяжелой математике, идите на это. Дай мне знать. Как все пройдет. Желаю вам удачи.

Компиляторы: Принципы, Методы и инструменты (Второе издание)

Эта книга известна как

Он уходит глубоко в те места, где живут драконы: в царство компиляторов и операционных систем.

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

Книги по программированию профессионального развития

Полное руководство по карьере разработчика программного обеспечения *** Книга Джона (моя)!

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

Я написал эту книгу в первую очередь потому. Что просто не было хорошей книги—или вообще какой—либо книги. Если уж на то пошло. — которая рассказывала бы разработчикам программного обеспечения все. Что им нужно знать о том. Как сделать успешную карьеру в разработке программного обеспечения и ответить на все распространенные вопросы. Которые я получаю:
– Как начать работу в качестве разработчика программного обеспечения?
– Как выучить новый язык программирования?
– Колледж. Учебный лагерь. Самостоятельная учеба?
– Как мне справиться с моим боссом-мудаком? Мои коллеги? Дискриминация?
– Как мне найти новую работу? Моя первая работа?
– Что мне на самом деле нужно знать. Чтобы быть разработчиком программного обеспечения?
– Как мне ЗАРАБОТАТЬ БОЛЬШЕ ДЕНЕГ и продвинуться по карьерной лестнице?

Прагматичный программист: От Подмастерья к Мастеру

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

Чистый кодер: Кодекс поведения для профессиональных программистов

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

Страстный программист: Создание повторнойкарьеры вобласти разработки программного обеспечения

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

Мифический Человек Месяц

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

Книги по программированию на основе архитектуры

Доменно-ориентированный дизайн: Решение проблем сложности в основе программного обеспечения

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

Паттерны архитектуры корпоративных приложений

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

Шаблоны корпоративной интеграции: Проектирование, построение и развертывание решений обмена сообщениями

Это абсолютное руководство по реализации архитектуры шины сообщений или служебной шины. Не позволяйте названию книги ввести вас в заблуждение; эта книга полностью посвящена шинам сообщений и всем шаблонам. Используемым для их правильной реализации. Если вы занимаетесь какой-либо интеграцией между приложениями или сервисами с помощью шины. Вам обязательно понравится эта книга.

Рефакторинг в паттерны

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

Книги по гибкому программированию

Гибкая разработка программного обеспечения, Принципы, Паттерны и практики

(Существует также версия этой книги на языке C#.)

Да, это еще одна книга Боба Мартина, и она превосходна. Эта книга познакомит вас со всеми основными принципами гибкой разработки без всяких пух и прах. Не только это, но и вводит ТВЕРДЫЕ принципы проектирования. Которые являются фундаментальными для понимания того. Как писать чистый. Поддерживаемый код. Эта книга убедила меня начать заниматься парным программированием.

Гибкая оценка и планирование

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

Применяемые Пользовательские Истории: Для Гибкой Разработки Программного Обеспечения

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

Экстремальное Программирование Объяснил: Объятия Изменения, Второе Издание

То, что я считаю классической гибкой книгой. Немного экстремально для некоторых—это не SCRUM, это настоящий XP. Эта книга по программированию-чрезвычайно подробное описание того. Как реализовать экстремальное программирование. Но идеи этой книги могут быть применены ко многим различным типам гибких сред.

Книги по программированию алгоритмов и вопросов интервью

Жемчужины Программирования, Второе Издание

Классическая книга задач программирования. Прочтите эту книгу и выполните все упражнения. Если вы переживете это испытание. Вы станете гораздо лучшим программистом и получите глубокое понимание алгоритмов и алгоритмического дизайна. А также некоторые критические навыки решения проблем.

Взлом Интервью по кодированию: 150 Вопросов и решений по программированию

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

Введение в алгоритмы, Третье издание

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

Книги по программированию, ориентированные на конкретные языки и связанные с ними Языки программирования

JavaScript: хорошие части

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

Мышление на Java, Четвертое издание

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

Эффективный современный C++: 42 Конкретных способа улучшить использование C++11 и C++14

(Эффективный C++, Более эффективный C++ и Эффективный STL)

Я связался с современной версией этой книги, но вся серия старых книг чертовски хороша. Я так многому научился, читая оригинальные Эффективные С++, Более эффективные С++ и Эффективные книги STL, что. Хотя сегодня я не пишу никакого кода С++. У меня все еще есть теплые воспоминания об этих книгах. Я признаю, что более ранние книги, вероятно, не принесут вам много пользы сегодня, если вы пишете на современном C++. Но если вы одержимы тем. Чтобы стать лучшим разработчиком C++. Вы должны прочитать эту обновленную версию классики.

Эффективная Java, Второе Издание

Аналог Java почти так же хорош, как и оригинал C++. Некоторые рекомендации датированы изменениями в языке, но в целом это все еще действительно хорошая книга.

C# In Depth, Третье Издание

Вы знаете C#? Вы действительно знаете C#? Если вы прочтете эту книгу, то поймете. Я никогда не читал книги, которая так глубоко погружалась бы в язык, как эта. До того. Как я прочитал эту книгу, я считал себя экспертом в C#. Я бы поставил себе 10. После этого я понял, насколько далека была моя первоначальная оценка моих знаний.

Семь языков за семь недель: Прагматическое руководство по изучению языков программирования (Pragmatic Programmers)

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

Книги по программированию, связанные с OPs, QA и развертыванием

Тестирование Компьютерного Программного Обеспечения, Второе Издание

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

Корабль! Практическое руководство по успешным программным проектам

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

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

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

Мягкие Навыки и Другие Забавные Книги По программированию

Soft Skills: The Software Developer’s Life Manual **** Книга Джона (моя первая!)

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

Как завоевывать друзей и влиять на людей

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

Код: Скрытый язык компьютерного оборудования и программного обеспечения (Лучшие практики разработчиков)

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

Гедель, Эшер, Бах: Вечная Золотая коса

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

Война искусства

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

Как Человек Думает

Это короткая книга и еще одна старая, но чрезвычайно мощная.

Мышление, представленное в этой книге, — это мышление, необходимое для достижения успеха в жизни.

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

Максимальное достижение: Стратегии и Навыки, Которые Откроют Ваши Скрытые Силы для Достижения Успеха

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

Почему?

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

Эта книга охватывает широкий спектр тем личностного развития и дает вам огромный “толчок для вашего доллара” с точки зрения того. Что может быть предложено в одной книге.

Как потерпеть неудачу почти во всем и при этом Выиграть по-крупному: Своего рода история моей жизни

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

Но он гораздо больше.

Эта книга излагает философию жизни, которая не может не сделать вас чемпионом.

Я никогда не ожидал такой мудрости от создателя мультфильма о заостренном боссе, но эта книга доставляет удовольствие.

Препятствие-Это Путь: Вневременное Искусство Превращения Испытаний в Триумф.

Эта книга-первая книга. Которая по-настоящему познакомила меня со стоической философией. Занимающей центральное место в моей сегодняшней жизни.

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

Большинство из этих уроков исходят непосредственно из стоической философии; они рассказываются с использованием исторических историй. Которые демонстрируют принцип.

Правило 10х: Единственная разница между Успехом и неудачей

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

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

Речь идет о том. Как вы можете и должны предпринять массовые действия для достижения успеха в жизни.

Эта книга даст тебе пинка под зад—обещаю.

Быть Одержимым или Быть Средним

Эй, а разве окружающие вас люди говорят, что вы “одержимы” и что то. Что вы делаете, вредно для здоровья. Потому что вы слишком много работаете?

Эта книга дает вам разрешение вежливо “показать им палец” и продолжать прокладывать свой след.

Все дело в том. Чтобы использовать силу одержимости. Чтобы попасть туда. Куда вы хотите.

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