Algunas personas consideran las declaraciones de devolución múltiples como un mal estilo de programación. Si bien esto es cierto para los métodos más grandes, no estoy seguro de si es aceptable para los cortos. Pero hay otra pregunta: ¿Debería escribirse else
explícitamente, si hay una declaración de devolución en el if
anterior?¿Vuelve de un método con "else" implícito o explícito o con una sola declaración de "devolución"?
implícito else
:
private String resolveViewName(Viewable viewable) {
if(viewable.isTemplateNameAbsolute())
return viewable.getTemplateName();
return uriInfo.getMatchedResources().get(0).getClass().toString();
}
explícita else
:
private String resolveViewName(Viewable viewable) {
if(viewable.isTemplateNameAbsolute())
return viewable.getTemplateName();
else
return uriInfo.getMatchedResources().get(0).getClass().toString();
}
Técnicamente else
no es necesario aquí, pero hacen el sentido más obvio.
Y tal vez el enfoque más limpio con una sola declaración:
private String resolveViewName(Viewable viewable) {
String templateName;
if(viewable.isTemplateNameAbsolute())
templateName = viewable.getTemplateName();
else
templateName = uriInfo.getMatchedResources().get(0).getClass().toString();
return templateName;
}
Cuál prefiere? ¿Otras sugerencias?
Una instrucción de retorno sola no suele ser lo necesite para un buen método corto como este ya que tener dos es igual de fácil de leer, y por lo general, a m e al menos, más lógico en la mayoría de las situaciones. – Nobody
Si bien el uso de else es meramente un gusto por la materia, creo que esta cadena de monstruos 'uriInfo.getMatchedResources(). Get (0) .getClass(). ToString()' es más preocupante. Esto solo pide Excepciones en algún punto que probablemente debería evitarse con unos pocos controles adicionales. – x4u
"Algunas personas consideran las declaraciones de devolución múltiples como un mal estilo de programación". ver http: // stackoverflow.com/questions/36707/should-a-function-have-only-one-return-statement – Raedwald