Справочник

Сокращённый глоссарий

Термины, необходимые для материалов этого демо.

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

Курс под вашу задачу

Это только один фрагмент. Полную программу «Глубокие модули» можно изучать 7 дней после одобрения заявки. По той же методике можно создать курс под другую тему, одного человека или группу.

Запросить доступ к полному курсу ↗