PHP uno de los lenguajes de programación mas populares, se encuentra en el top #8 (resultados de encuesta de Stack Overflow). Aunque va perdiendo popularidad frente a otros lenguajes, no hay duda que aun es el motor de varios proyectos muy conocidos, como el gestor WordPress por citar solo un ejemplo. Además la curva de aprendizaje es corta para quienes se adentran en el desarrollo web.

Sin entrar en debates, en este artículo nos centraremos en destacar la ventaja de programar solo con código PHP puro (código propio de PHP donde nosotros definimos nuestras propias clases, métodos o funciones) frente a PHP framework (que es un conjunto de librerías, clases, métodos ya definidos que nos facilita muchas tareas) como Laravel, Symfony, etc.

  • Rendimiento: Un framework esta hecho para soportar una multitud de casos de uso y contiene muchas librerías que se cargan al inicio de cada petición. El solo hecho de cargarlas para generar una respuesta rápida no tiene mucho sentido. Por ejemplo, es como salir a comprar a la esquina en automóvil, no parece práctico ¿verdad?
  • Control. El depender de un framework también implica perder una parte del control sobre la implementación.
  • Detección de errores y fallos: Es mas difícil detectar fallos si estos pueden ser provocados a nivel de framework y se hace difícil detectarlos y hacerle seguimiento.
  • Seguridad. Es probable que un framework tenga fallos de seguridad, y que tarden en ser corregidos. Normalmente uno debería preocuparse de sus propios problemas de seguridad y controlarlos directamente.
  • Costo de actualización. Cada actualización del framework involucra futuras revisiones en el código y como afectan los cambios externos. Muchas veces, se puede decidir optar por crear un framework propio para tener todo bajo control. A veces corregir un bug o nuevas funcionalidades no pueden esperar una nueva versión.
  • Elección adecuada: Cada framework cubren ciertos requerimientos y puede que no soporten todo lo que deseamos realizar. A veces hasta podría llegar a usarse una más de uno. Por ello, algunas compañías prefieren usar sus propias implementaciones.
  • Especialización. Se requiere mayor especialización para usar un framework en particular. La forma de trabajo y la estructura de código es particular de cada framework. Si un framwork no cubre tu espectativa, tendrás que pasar a especializarte en otro. El tiempo es un recurso a tener en cuenta.
  • Aprendizaje: Cuando estas aprendiendo desde cero o deseas tener mayor control sobre el detalle de la implementación, es mejor trabajar desde el mas bajo nivel posible.

¿Y tu qué opinas? ¿Hay otra ventaja de PHP puro frente a un framework PHP?