#рефакторинг #запахи_кода > Программисты любят высокие крепкие стены между своими модулями и горько жалуются на то, что обмен данными в обход этих стен слишком сильно увеличивает связи. Чтобы заставить программу работать, некоторый обмен необходим, но нам нужно свести его к минимуму и держать под контролем. ### **Рефакторинги** - [[Перенос функции (Move Function)]] - [[Перенос поля (Move Field)]] - [[Сокрытие делегата (Hide Delegate)]] - [[Замена подкласса делегатом (Replace Subclass with Delegate)]] - [[Замена суперкласса делегатом (Replace Superclass with Delegate)]] ### **Ссылки** - [[Мартин Фаулер - Рефакторинг кода на JavaScript]]