Cita: No recuerdo haber dicho que el return es bueno.
Cambio mi pregunta.
¿Porque el return es malo? Te evita el overhead de tener que pasar por el resto de la funcion al pedo (por lo tanto es mas performante) y ademas es mas facil de seguir, siendo que es programacion pro descarte un codigo que sea:
if(seLaCome("Imakuni"))
{
return "Bhamo lo' pibe";
}
if(seLaCome("Jose"))
{
return "Pibe cantina...¿De que te la das?";
}
if(seLaCome("Rulo"))
{
throw new Exception(System.NotPossibleException);
}
antes que
if(seLaCome("Imakuni"))
{
cadena = "Bhamo lo' pibe";
}
else
{
if(seLaCome("Jose"))
{
cadena = "Pibe cantina...¿De que te la das?";
}
else
{
if(seLaCome("Rulo"))
{
throw new Exception(System.NotPosibleException);
}
}
}
Cita: Te evita el overhead
overhead es otra cosa. Ahí, lo unico que hace internamente es un salto.
Si queres saber porqué es malo, leete el articulo de dijkstra.... sé que lo leiste, sé que me estas intentando trollear.
De todas formas, tu ejemplo es malo
.
Bueno , pero Dijkstra es un taliban al nivel del smalltalker promedio
(10-02-2013 21:29)Imakuni escribió: [ -> ]sé que lo leiste,
Pensas que lo lei. Y no. O si lo hice, no lo recuerdo.
Cita:De todas formas, tu ejemplo es malo .
Si, mi ejemplo es una mierda
bool valorBooleanoPuto = false;
if (SeLaCome("Imakuni"))
{
valorBooleanoPuto = true;
}
else
{
if(!SeLaCome("Imakuni") && SeLaCome("Djikstra")
{
valorBooleanoPuto = false;
}
else
{
if(!SeLaCome("Imakuni") && !SeLaCome("Djikstra") && SeLaCome(".py")
{
valorBooleanoPuto = true;
}
}
}
return valorBooleanoPuto;
Con un return te ahorrabas una variable. La verdad, hay mas ejemplos donde realmente te ahorras cosas.
Ademas de el hecho que es mucho mas legible con returns el programa...nose, vos no usas returns?