Hace tiempo, comenté acerca del desarrollo web en plataformas como Java, PHP, Erlang, Python... en ese momento, veía la maraña en la que está tejida la red de redes, el abanico de posibilidades a la hora de desarrollar una aplicación web y comenzaban a sonar términos como CRUD, SOA, MVC, ActiveRecord, Scaffolding...
Es una verdad que cada entorno, en cada lenguaje, ha ido implementando una serie de características que facilitasen y acelerasen la creación de entornos web, de toda índole, en poco tiempo y, una vez aislada la idea base, dado un nombre e incluso un acrónimo de tres letras (como el buen Jargon file manda :-) ), se convierte en un concepto de estudio e implementación en el resto de lenguajes.
A este respecto, PHP ha sufrido una desaceleración en innovación. La cantidad de estas características que pululan entre el resto de lenguajes, que la mayoría los orientan a objetos, quedan en imposibilidad de implementación, o en una implementación algo sucia, cuando se hacen en PHP, debido a su, aún, pobre implementación de orientación a objetos.
No obstante, en PHP se pueden identificar buenos entornos de trabajo que hacen, o en los que se pueden emplear y usar todos estos conceptos, como son Code Igniter o Simfony.
Algunos conceptos a tener en cuenta y que no se nos olviden, como buenas prácticas para el desarrollo de sitios web son:
En poco tiempo, supongo y espero, haré esta lista algo más grande, porque sé que se me olvidan más conceptos, pero de momento, así se queda :-P