Logotipo de ConstructiCat
CodeBust.
Explorar la sección ▾

Envidia de características.

Un método accede a los datos de otro objeto más que a sus propios datos.

##Signos y síntomas

Un método accede a los datos de otro objeto más que a sus propios datos.

class InvoicePrinter {
  String line(Order order) {
    return order.customer.name + ": " + order.item.sku + " x" + order.item.qty;
  }
}

##Causas del problema

Este olor puede aparecer después de que se trasladen campos a una clase de datos. Si es así, quizá quieras trasladar también a esa clase las operaciones sobre los datos.

##Tratamiento

##Beneficios

  • Menos duplicación de código (si el código que maneja los datos se coloca en un lugar centralizado).

  • Mejor organización del código (los métodos que manejan los datos están junto a los datos en sí).