Sorry this post is only in Spanish :
http://ivanmosquera.net/index.php/2010/02/13/las-referencia…que-no-usarlas/?lang=es
(Español) Las referencias en PHP: qué son y el porqué de no usarlas
Leave a comment
4 Comments.
Leave a Reply
Trackbacks and Pingbacks:
- [Destripando PHP] Las variables | ivanmosquera.net - Pingback on 2010/04/15/ 01:04
Muy bueno e interesante el post, enhorabuena!
Sobre la compatibilidad hacia atrás, creo que a veces es necesaria, para no arrastrar demasiada ‘mierda’ con el transcurso del tiempo. Por ejemplo python 3 lo ha hecho, y aunque es una putada para los developers, es bueno para el lenguaje: )
Muchas gracias a ver si le cojo el tranquillo a esto de bloguear XDDDD
Lo cierto es que Python me cae bien, no así Ruby por culpa de que me recuerda Perl y bueno… dejé la época de “Uuu! mira todo lo que hago en una línea”. No digo que Ruby sea malo, seguro que está muy bien pero ahora mismo valoro más el código fácil de leer.
.
Y bueno, python debe ser mejor en eso pero Python al final es una curva de aprendizaje más y es tiempo que quitar para otras batallas. Si lo llevamos a nivel de empresa mejor no calcular el dinero que supondría dejar PHP para pasar a Python porque lo mismo los fríos números dicen que saldría mejor cambiar de plantilla
Lo que sí he visto es empresas que han pasado de lenguajes pesados (Java) a Ruby/Python, supongo que tanta capa era absurdos en algunos casos y esa curva se compensa de sobra.
Por eso creo que la compatibilidad hacia atrás es un mal menor en el caso de PHP, ya que se van añadiendo las funcionalidades y la gente las va asumiendo al ritmo que considere.
De hecho este post ha sido motivado por un nuevo warning que saca PHP 5.3:
Warning: Call-time pass-by-reference has been deprecated
(que creo que en realidad no implica que no puedas usar referencias sino que no uses el operador de referencia en las llamadas a función).
Así que poco a poco a base de warnings se van cambiando las prácticas.
Lo dicho, gracias por leer y por comentar
Este post necesita una aclaración: lamentablemente en PHP hay situaciones en que sigue siendo necesario trabajar con referencias. El mensaje viene a ser que se eviten siempre que sea posible. Si por ejemplo estás utilizando referencias por eficiencia, puedes encapsular esa estructura en un objeto para evitarlo.