Роберт Мартин, сборник афоризмов и высказываний

Роберт Мартин
Роберт Мартин

консультант и автор в области разработки ПО

Проектирование и программирование - это человеческая деятельность; забудь об этом, и все потеряно. - Бьерн Страуструп, 1991.

Подробнее

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

Подробнее

В этом заключается философия YAGNI: «Вам это не понадобится». В этом сообщении есть мудрость, поскольку чрезмерная инженерия часто намного хуже, чем недостаточная инженерия. С другой стороны, когда вы

Подробнее

Скажи что ты имеешь в виду. Имейте в виду то, что вы говорите.

Подробнее

Люди, которые думают, что код однажды исчезнет, подобны математикам, которые надеются однажды открыть математику, которая не обязательно должна быть формальной. Они надеются, что однажды мы откроем сп

Подробнее

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

Подробнее

Вариант использования - это описание способа использования автоматизированной системы. Он определяет входные данные, которые должен предоставить пользователь, выходные данные, которые должны быть возв

Подробнее

Создание проекта должно быть одной тривиальной операцией.

Подробнее

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

Подробнее

Проблема, которую Дейкстра осознал на раннем этапе, заключалась в том, что программирование - это сложно, и программисты не очень хорошо с ним справляются.

Подробнее

Рассмотрим, например, поистине отвратительную практику создания переменной с именем klass только потому, что имя класса использовалось для чего-то другого.

Подробнее

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

Подробнее

Добавление рабочей силы в отложенный проект делает его позже.

Подробнее

Все состояния гонки, взаимоблокировки и проблемы одновременного обновления возникают из-за изменяемых переменных.

Подробнее

Если изменение требований ломает вашу архитектуру, значит, она отстой.

Подробнее

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

Подробнее

Схемы баз данных общеизвестно нестабильны, чрезвычайно конкретны и сильно зависят от них. Это одна из причин, почему интерфейсом между объектно-ориентированными приложениями и базами данных так сложно

Подробнее

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

Подробнее

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

Подробнее

Каким бы ни было TODO, это не повод оставлять в системе плохой код.

Подробнее

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

Подробнее

Оценка - это не число. Оценка - это распределение.

Подробнее

То, что мы можем создать систему «правильно с первого раза», - это миф. Вместо этого нам следует реализовать только сегодняшние истории, а затем провести рефакторинг и расширить систему для реализации

Подробнее

Точно так же, как Заяц был слишком уверен в своей скорости, так и разработчики слишком уверены в своей способности оставаться продуктивными.

Подробнее

Предоставление слишком большого количества деталей может стать приглашением к микроменеджменту.

Подробнее

Основная стоимость обслуживания связана с исследованиями и риском. Spelunking - это стоимость копания в существующем программном обеспечении с целью определить лучшее место и лучшую стратегию для доба

Подробнее

Наука не работает, доказывая истинность утверждений, а скорее доказывая ложность утверждений.

Подробнее

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

Подробнее

SRP - одна из наиболее важных концепций объектно-ориентированного проектирования. Это также одна из самых простых концепций для понимания и соблюдения. Однако, как ни странно, SRP часто является наибо

Подробнее