Создатель одной из самых популярных когда-либо опубликованных книжных серий описал ее лучше многих: «Читатель проживает тысячу жизней, прежде чем умрет . . . человек, который никогда не читает, живет только одной. «Джордж Р. Р. Мартин — мастер письма, и в каком-то смысле он создает… код. Понятие кодекса восходит к 1300-м годам, когда оно впервые использовалось для описания «систематического составления законов». Слово происходит от старофранцузского слова code, означавшего «система законов, свод законов». В свою очередь, оно происходит от латинского codex, ранее caudex.

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

Если вы программист, вы уже знаете, что проблем много, а препятствий еще больше. Вы уже прочитали сотни, если не тысячи страниц о коде, языках программирования, принципах кодирования и многом другом. Есть большая вероятность, что вы прочитали одну или несколько книг, которые мы выбрали. Мы считаем их книгами, которые разработчик/программист должен прочитать в 2020 году.

Чистый код — Роберт С. Мартин

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

Code Complete 2 — Стив МакКоннелл

Только одно лучше, чем предоставление практических руководств: обновлять их! Стив МакКоннелл написал то, что считается лучшим практическим руководством в истории программирования. Он не только опубликовал Code Complete, но и обновил его. Code Complete 2 — одна из лучших книг, которую может получить любой программист и разработчик программного обеспечения. Были добавлены передовые практики, а также сотни новых и свежих примеров кода. Они иллюстрируют искусство и науку создания программного обеспечения. МакКоннелл объединяет наиболее эффективные методы и обязательные принципы в четкие и прагматичные рекомендации. Он собирает всю совокупность знаний, полученных в результате исследований, академических кругов и т. д., чтобы создать отличный путеводитель.

Не заставляй меня думать — Стив Круг

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

Мифический человеко-месяц — Фред Брукс

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

Проект «Феникс» — Джин Ким, Кевин Бер, Джордж Спаффорд

Как программист/разработчик программного обеспечения вы обязаны на кого-то работать, по крайней мере, в первые годы своей карьеры. В какой-то момент вам, возможно, придется работать в компании, которая требует от вас создания кода и/или приложений, а также всего, что может существовать в рамках вашей должностной инструкции, независимо от специальности. Поэтому жизненно важно — и это относится практически к каждому сотруднику — понимать, как на самом деле работает компания, в которой вы работаете, и как она должна работать. Проект Phoenix, написанный в соавторстве с Джином Кимом, Кевином Бером и Джорджем Спаффордом, подходит к программированию с этой точки зрения. Это история вымышленной обреченной корпорации, которая превратилась в «звезду», демонстрируя, как «неправильная работа» негативно повлияет на эффективность вашей компании.

Справочник самозванца — Роб Конери

Чаще всего программисты и разработчики программного обеспечения — люди-самоучки. Их влечение к программированию привело к тому, что они начали с ним экспериментировать, и благодаря его прекрасной природе те, кому удалось его понять, в конечном итоге нашли работу программистами, даже без ученых степеней. Однако изучение чего-либо под руководством репетиторов и опытных людей в этой области отличается. А еще может быть дорогим. Роб Конери нашел промежуточное решение этой проблемы, предложив «Справочник самозванца» тем программистам-самоучкам, которые хотят заполнить пробелы в знаниях и пройтись по всем темам, обсуждаемым и преподаваемым в программе получения степени CS. Отличный выбор для начинающих и самоучек-программистов.

Искусство компьютерного программирования — профессор Дональд Кнут

Это высококачественное, насыщенное кодом, основанное на терминах программирование в лучшем виде. Искусство компьютерного программирования — это название, которое профессор Дональд Кнут решил дать своей книге, фрагменту текста, получившему высокую оценку в сообществе и считающемуся одним из самых трудных для чтения по данной теме. Билл Гейтс, основатель Microsoft, однажды сказал: «Если вы думаете, что вы действительно хороший программист… прочитайте «Искусство компьютерного программирования» [Кнута]… Вы должны отправить мне резюме, если сможете прочитать все». От основных концепций и методов программирования до структурных отношений между элементами данных и способов эффективной работы с ними, Кнут включает все в «Искусство компьютерного программирования».

Резюме

Это всего лишь 7 из тысяч книг, статей, журналов, статей, исследований и исследований, написанных и опубликованных по программированию. В постоянно развивающемся мире поток информации постоянно доходит до профессионалов, а также до интересующихся читателей (при условии, что они имеют какое-то представление о программировании, поскольку технические термины могут сделать большинство этих книг нечитаемыми для непрограммистов). Почетные упоминания среди обязательных к прочтению книг также включают «Структура и интерпретация компьютерных программ» (Джеральд Джей Суссман, Хэл Абельсон, учебник MIT), «Гибкая разработка программного обеспечения» (Роберт С. Мартин), «Шаблоны проектирования» (Эрих Гамма, Джон Влиссидес, Ральф Джонсон, Ричард Шлем) и многие другие.

Первоначально опубликовано на https://ginbits.com 23 июля 2020 г.