Hola,
¿Cómo va eso? Espero que bien. Pues aquí, que me ha surgido una duda, a ver si alguien podría ayudarme con ella. Si uno echa un vistazo al
manual de PHP sobre "return()", puede que le pase lo que a mí, que no termina de verlo claro del todo, para según qué casos. Si te parece, pondré un ejemplo. Y nota que es un ejemplo "real", que estoy usando ahora mismo en cierto proyecto.
Imagina que existe un "script" "principal" (no requerido ni incluido, sino "solicitado", desde donde se incluyen y requieren otros "scripts"), digo, tal que así:
Código PHP:
<?php
require('gb-init.php');
$gbfe = new FrontEnd();
?>
Efectivamente, son dos líneas nada más. Primero se requieren ciertos archivos, y luego se crea una instancia del objeto "FrontEnd", como puede verse. No hay más. Puesto que nada más es necesario. Ahora bien, si concluimos que no hay más, ¿qué tal parecería este cambio?
Código PHP:
<?php
require('gb-init.php');
return new FrontEnd();
?>
Aparentemente, todo va bien. No noto mejora en el proceso del "script", pero, la "idea" en este segundo caso, es que, ya que no vamos a utilizar la variable "$gbfe", ¿para qué guardar una instancia del objeto en la misma? ¿No sería, sino más rápido, más elegante, más correcto, mejor, retornar directamente la instancia de dicho objeto?
Ahora bien. Téngase en cuenta que la clase "FrontEnd()" se encarga, a partir de su constructor, de hacer lo que es menester hacer. De hecho, como digo, en ambos casos expuestos arriba el programa se comporta como se espera, al menos en las pocas pruebas que he hecho, lo reconozco. Pero, ¿qué implicaciones tienen la primera solución y la segunda? ¿Cómo lo veis vosotros?
Y nada más. Eso es lo que quería preguntaros, puesto que me ha surgido la duda, y pienso que tal vez podáis ayudarme. Así que gracias de antemano pataliebres, ¡y cuidado con las procesiones!