En el siguiente código, ¿es realmente una mala práctica para updateWithContex
devolver el mismo objeto que tomó como parámetro?Práctica Java: devolver el mismo objeto que se pasó como parámetro
class SomeClass{
Foo updateWithContex(Foo foo){
foo.setAppId(i);
foo.setXId(index);
//.....
return foo;
}
}
class Foo{
public void setAppId(int appId)
{
//
}
public void setXId(int appId)
{
//
}
public void changeState(X x)
{
//
}
}
En C++, he visto código como este:
BigObject&
fastTransform(BigObject& myBO)
{
// When entering fastTransform(), myBO is the same object as the function
// argument provided by the user. -> No copy-constructor is executed.
// Transform myBO in some way
return myBO; // Transformed myBO is returned to the user.
}
¿Es esto también sucede?
El método de encadenamiento es un poco diferente, devuelve una referencia al objeto al que se llamó el método, no al objeto que se pasó como parámetro como en este caso. – buc
@buc: cierto, buen punto. Fui demasiado rápido, luego –