Завистливые функции.
Метод обращается к данным другого объекта чаще, чем к собственным данным.
##Признаки и симптомы
Метод обращается к данным другого объекта чаще, чем к собственным данным.

class InvoicePrinter {
String line(Order order) {
return order.customer.name + ": " + order.item.sku + " x" + order.item.qty;
}
}##Причины проблемы
Этот запах может появиться после перемещения каких-то полей в класс данных. В этом случае операции с данными, возможно, также следует переместить в этот класс.
##Лечение
Приёмы рефакторинга
##Результат
-
Уменьшение дублирования кода (если код работы с данными переехал в одно общее место).
-
Улучшение организации кода (так как методы работы с данными находятся возле этих данных).
