Справочник
Сокращённый глоссарий
Термины, необходимые для материалов этого демо.
- Сложность (complexity)
- Всё, что делает систему труднее понять, изменить или проверить.
- Когнитивная нагрузка (cognitive load)
- Сколько деталей нужно держать в голове, чтобы безопасно работать с кодом.
- Усиление изменений (change amplification)
- Насколько маленькое изменение разрастается по файлам, слоям и тестам.
- Интерфейс (interface)
- Всё, что пользователь модуля должен знать, чтобы использовать его правильно.
- Глубокий модуль (deep module)
- Много поведения за маленьким понятным интерфейсом.
- Мелкий модуль (shallow module)
- Интерфейс почти такой же сложный, как внутреннее поведение.
- Рычаг (leverage)
- Много готового поведения для вызывающего кода (caller) за небольшое знание интерфейса.
- Локальность (locality)
- Знание и будущие изменения концентрируются в одном месте.
- Транзитный модуль (pass-through module)
- Прослойка, которая почти ничего не скрывает и передаёт вызов дальше.
- Тест удаления (deletion test)
- Проверка: после удаления модуля сложность исчезнет или расползётся по вызывающему коду (callers)?
- Задача агенту (agent task)
- Цель, контекст, границы, ожидаемый результат и критерии приёмки.