PHP: Frameworks MVC para aplicaciones web

Conclusión sobre los marcos de trabajo

Prueba ahora LinkedIn Learning sin cargo y sin compromiso.

Prueba gratis Mostrar modalidades de suscripción
Habiendo visto una gran variedad de marcos de trabajo, ahora ya tenemos una visión ampliada sobre dichos marcos y contamos con más bases tanto técnicas como subjetivas para decidir sobre qué marco elegir en función de qué proyecto.
05:34

Transcripción

Desafortunadamente, no hemos podido abarcar todos los temas que me hubiera gustado analizar de cada marco de trabajo. Faltaron plantillas o "layouts", manejo de idiomas, paginación, formularios, etc. Se hubiera hecho un curso demasiado extenso. Sin embargo, pudimos ver lo básico de cada marco y cada implementación de cada uno de ellos. Más allá de hablar si un marco de trabajo es mejor que otro, más bien voy a optar por comparar para qué utilizaría yo qué "framework" en cuestión de tamaño de una aplicación. Si tuviera una aplicación sumamente sencilla de un formulario y que dicho formulario fuera procesado por PHP y se requiriera que, sin muchos recursos, la respuesta fuera rápida, lo haría en CodeIgniter. Sin embargo, si tuviera la certeza de que dicha aplicación va a crecer en tamaño y complejidad, optaría por otras opciones. Para algo tan sencillo nunca utilizaría Symfony. Symfony está hecho para aplicaciones mucho más robustas, pero ello conlleva que cosas sencillas parecieran muy complejas. Por ello, para aplicaciones pequeñas y medianas, no usaría Symfony. Symfony lo reservaría para aplicaciones que sé que van a ser muy grandes. Adicionalmente, la filosofía de Symfony es que cada paquete que adoptan no está intrínsecamente casado con Symfony, es decir, cualquier "framework" podría utilizar ese mismo paquete. El ejemplo más claro es que hay forma de utilizar su ORM de base de datos Doctrine con Laravel. Y, bueno, regresando a la comparativa, en ese aspecto, Yii, CakePHP y Laravel están casi a la par, con Laravel llevando una ligera ventaja, ya que está muy equilibrado para hacer aplicaciones pequeñas, medianas y grandes. Además, la comunidad ha abrazado a Laravel y lo ha cuidado de una manera artesanal para cada vez mejorar más. CakePHP ha venido de menos a más, ya que en sus primeras versiones era bastante malo, ha venido a consagrarse y para quedarse con una comunidad que también lo ha adoptado. Yii, por sus siglas en inglés "Yes, it is", comenzó siendo lo que ellos decían ser: "PHP rails" y su primera versión se parecía a las primeras versiones de Ruby on Rails. Sin embargo, con el paso del tiempo, ha venido a desarrollarse por cuenta propia y dejado atrás ese modelo de copiar a "rails". Su bemol es que no tantos desarrolladores lo han adoptado como su marco de cabecera y mucho menos tiene la popularidad que tienen los demás marcos. Y finalmente viene la parte a nivel personal de qué nos puede gustar de cada marco de trabajo. De CodeIgniter me gusta que lo descargas y listo para comenzar a desarrollar, además fue el primer marco que aprendí y por ello tiene un lugar especial en mi vida. ¿Qué no me gusta? Que prácticamente todo es manual, hay generadores externos, pero como parte del "core" de CodeIgniter, no. Además, al estar inicialmente basado en arreglos, hoy en día me agradan más las cosas pensadas con el paradigma de programación orientado a objetos. Por lo mismo, apenas la última versión más o menos funciona con Composer. Las versiones pasadas tenían que hacer "hacks" para que funcionara. De Laravel me encanta su estructura, su forma de trabajo y sobre todo su evolución. Su mentalidad de tomar lo mejor de cada tecnología y emularlo me encanta, su documentación es muy clara y hay muchos ejemplos allá fuera para ayudarnos. Eloquent, Tinker y Artisan me han devuelto el gusto por desarrollar. ¿Qué no me gusta? Su curva de aprendizaje y que cambian mucho de versión a versión. Si bien esto es normal, es molesto que algo no funcione de la versión 5. 0 a la versión 5. 1 y viceversa y etc. De Symfony me encanta también su mentalidad y su comunidad. Me encanta que desprenden prácticamente cada biblioteca de Symfony, es decir, puedes copiar cualquier componente aparte, y puedo comprender su división de capas y su uso de Doctrine para proyectos muy grandes. ¿Qué no me gusta? No es tan digerible, su curva de aprendizaje es complicada y, definitivamente, no está hecho para proyectos ni pequeños ni medianos. Doctrine, aunque es muy interesante utilizar con su llamado DQL, te hace la vida imposible cuando quieres hacer "queries" dentro de "queries". De CakePHP me gustó su facilidad de uso, su curva de aprendizaje es muy plana. Soy fanático de los generadores de código y me encantó su temática de pasteles y su herramienta Bake. Su documentación es muy clara, concisa y pragmática. ¿Qué no me gustó? Si bien siento que la sintaxis no es tan intuitiva, a nivel personal no encontré nada que no me haya gustado. Recuerden que es simplemente mi opinión personal. De Yii, sus generadores web me mataron. Si soy fanático de los generadores de código, soy más fanático de generadores de código con interfaz web. ¿Qué no me gusta? Me dio muchos problemas para instalarlo. Que no esté listo para utilizarse –como dicen en inglés: "out of the box"– tampoco me agradó. Su manejo de rutas es muy arcaico y para nada intuitivo. Si bien puedes tener tu configuración en varios archivos, el inicialmente tener todo en uno solo me desagradó bastante. Y por último, su documentación. Si bien es clara, no es concisa y los ejemplos son muy aislados. Es demasiado descriptiva y cuando buscas algo rápido no es nada fácil encontrarlo.

PHP: Frameworks MVC para aplicaciones web

Descubre los frameworks MVC más usados en PHP, aprende cuáles son sus ventajas y por qué y cuándo se deben usar Yii2, Symphony, CakePHP, Laravel y CodeIgniter mediante ejemplos.

2:43 horas (36 Videos)
Actualmente no hay comentarios.
 
Software:
Fecha de publicación:28/06/2017

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.