Разработчик с десятилетним опытом в программировании поделился в сети подборкой книг по программной инженерии. В ней нет полезной литературы по конкретным языкам или платформам, зато здесь вы найдете лучшие практики, как организовать и улучшить свой код.
Вероятно, это самая рекомендуемая книга по программной инженерии. Письменный и организационный стиль «дядюшки Роба» считается золотым стандартом написания чистого и поддерживаемого кода.
Если вам понравится эта книга, поищите в интернете другие книги автора по этой теме — он также писал про проектирование чистой архитектуры, организации задач с помощью Clean Agile и общее руководство для профессионалов программного обеспечения с помощью Clean Coder.
Обложка
По словам автора подборки, если «Чистый кодер» сделал его лучшим программистом, чем он был раньше, то «Прагматичный программист» — лучшим инженером-программистом. Между кодированием и инженерией существует большая пропасть, которую можно преодолеть, изучив практические аспекты этой работы.
Автор книги описывает прагматизм как совокупность пяти ключевых качеств:
Обложка
Сможете ли вы родить одного ребенка за месяц, используя девять беременных женщин? Разумеется, нет, но некоторые менеджеры определенно так считают.
Однажды в вашей карьере наступит момент, когда вам придется прогнозировать сроки выполнения проекта. И вы заметите, что этот аспект разработки ПО больше похож на искусство, чем на точную науку. Эта книга представляет собой введение в некоторые проблемы планирования, содержит предостережения при работе с большой командой инженеров-программистов.
Обложка
Книга содержит важные советы по управлению продуктом на этапе, когда вы будете готовы отправить свой код в релиз. Всегда трудно и волнительно выпустить в свет свое детище после того, как вы так долго работали над ним. Потому что, как только реальные клиенты начнут его использовать, это моментально спровоцирует кучу головной боли (потому что не бывает совершенных продуктов).
Эта книга подготовит вас к натиску жалоб клиентов, инвесторов, разгневанных менеджеров и угрозам принудительного увольнения, которые естественным образом возникают после того, как вы выпускаете самую первую версию своего продукта.
Обложка
Как вы расставляете приоритеты в работе над большой системой, которую необходимо внедрить с нуля? Как вообще начать разбивать чудовищно большой и неоднозначный новый проект на более мелкие задачи, понятные даже джуниору?
Чаще всего для управления проектами и задачами используется метод Scrum (форма Agile-разработки). Он популярен, потому что он действительно работает, и это удобный инструмент, с которым должен быть знаком каждый айтишник.
Обложка
Книга, по сути, является подробным руководством по программной инженерии аж на 900 страниц. Она охватывает широкий набор тем — от структурирования кода до отладки, настройки производительности, документации и так далее. Разумеется, не обязательно читать его от корки до корки, но с ее помощью можно заполнить пробелы в знаниях. Благодаря своей полноте «Code Complete» стала одной из самых продаваемых книг по разработке ПО всех времен.
Обложка
Не самая свежая книга (ей более 20 лет), некоторые примеры кода из нее немного устарели, однако принципы, изложенные в ней, неподвластны времени. Вероятно, вы слышали или использовали шаблон проектирования model-view-controller? Это лишь одна из концепций, представленных в этой книге.
По сути, эта книга посвящена организации сложного программного обеспечения таким образом, чтобы максимально упростить его долгосрочную поддержку.
Обложка
Еще одна книга Мартина Фаулера, но уже на тему эволюции кода. Она придет на выручку, если вам время от времени приходится иметь дело с устаревшим кодом, который трудно понять — на это уходит много времени и кажется, что уже легче переписать все заново.
Рефакторинг проводится не только для устаревших систем, это обычная часть повседневного кодирования. Советы и примеры в книге научат вас, как улучшить читабельность и безопасность кода, ничего при этом не нарушая.
Обложка
Она в подборке больше как источник вдохновения, чем практических советов. В «Code» представлен опыт и показана изобретательность некоторых первопроходцев в разработке, заложивших основу современной технологической индустрии.
Обложка
Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…
Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…
Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…
В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…
Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…
Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…