Digamos que tengo un tipo llamado Superstar
. Ahora quiero tener un método que funcione y edite algunas propiedades de un objeto Superstar
.¿Una buena práctica para editar objetos "por referencia"?
Aquí hay dos formas de cómo podría implementar esto. 1 manera sería la siguiente:
private Superstar editSuperstar(Superstar superstar){
....
superstar.setEdited(true);
return superstar;
}
...
superstar = editSuperstar(superstar);
y forma 2 sería la siguiente:
private void editSuperstar(Superstar superstar){
....
superstar.setEdited(true);
}
...
editSuperstar(superstar);
¿Cuál de estas dos maneras posibles se considera la "mejor práctica"? ¿El primero, o el segundo pseudo "por referencia"?
esto es tarde, pero el segundo método no edita directamente la 'superestrella' exterior. Crea una versión localizada de 'superstar' y nunca cambia ninguna de las propiedades del objeto externo. – Jon
@Jon ¿Por qué dices eso? No hay nada aquí que respalde esa afirmación, ¿no? – Riduidel