Есть ли замечательные книги по программированию или разработке программного обеспечения, которые не зависят от языка? Зачем мне это читать?
Есть ли замечательные книги по программированию или разработке программного обеспечения, которые не зависят от языка? Зачем мне это читать?
Ответы:
Прагматичный программист: от подмастерья до мастера - Эндрю Хант и Дэвид Томас
Эта книга о том, как писать код, который работает и поддерживается. Ключевой концепцией является практичность. Все в книге сводится к 70 советам, которые легко запомнить, которые помогут вам создавать лучшее, более качественное программное обеспечение.
Полный код: практическое руководство по созданию программного обеспечения от Стива Макконнелла
Эта книга, вероятно, является окончательной книгой по созданию программного обеспечения. В нем обсуждаются такие темы, как основы построения (требования, архитектура и дизайн), выбор языка программирования, выбор методологии разработки, проектирование классов и объектов, написание высококачественных функций и методов, защитное программирование, использование и именование переменных. типы данных, организация и форматирование операторов, совместное программирование, тестирование, отладка, рефакторинг и инструменты разработки.
Это необходимо иметь на полке каждого разработчика программного обеспечения, даже если вы не пишете код явно.
Мой любимый: структура и интерпретация компьютерных программ
Это был мой первый учебный учебник 10 лет назад, и он до сих пор поражает воображение, насколько он важен для прогнозирования тенденций в области современного «разработки программного обеспечения» и программирования в целом.
Он использует LISP для своих примеров, но я не рассматриваю LISP как язык, поэтому он абсолютно агностик;)
Чистый код - Роберт Мартин
Мифический месяц человека - Фредерик П Брукс
Это обязательная книга для разработчиков программного обеспечения. Большинство томов по разработке программного обеспечения говорят о программном обеспечении для кодирования, языках программирования и новейших технологиях и методах написания программного обеспечения.
В «Мифическом человеко-месяце» мистер Брукс рассматривает более фундаментальный (ИМО) аспект разработки программного обеспечения - социальный аспект. Он обращается к проблемам, с которыми сталкиваются в крупном программном проекте, от проблемы добавления людей, эффекта второй системы и необходимости правильного процесса.
Эта книга посвящена программированию с точки зрения превращения его в инженерную дисциплину, которую можно использовать для разработки большого и сложного программного обеспечения.
Шаблоны дизайна . Шаблоны в значительной степени изогнуты ООП, но в ООП они довольно применимы к любому языку.
Вы должны прочитать это, потому что это сделает вас лучшим дизайнером. Он научит вас хорошим способам решения проблем проектирования подсистем, о которых вы могли и не догадываться, пока не разрабатывали системы в течение 40 лет. Они являются многоразовыми решениями для полуготовых проблем. Тем не менее, есть образец, который проходят второкурсники, когда они изучают шаблоны проектирования в школе:
Проектирование на основе доменов: борьба со сложностями в основе программного обеспечения
Эрик Эванс
Множество концепций высокого уровня, довольно продвинутая книга, которую я бы не рекомендовал начинающим разработчикам. Если вы работаете над крупномасштабным программным проектом с большим количеством взаимозависимостей, это отличный справочник.
Разработка через тестирование: на примере Кента Бека.
Супер введение в TDD. Начал меня с пути TDD. Примеры кода написаны на Java, но в остальном материал не зависит от языка.
Это все книги, которые я либо полностью прочитал, либо несколько раз перечитал значительную часть и хорошо составлен. Я новичок в программировании в целом, поэтому я использовал их, чтобы получить контекстуальное понимание того, что я должен научиться делать.
Ох за базу данных вещи