symfony1 - A cuál ir; Yii o Symfony
(3)
Como ya usas Zend, ¿por qué no usarlo como marco?
Y no hay respuesta a su pregunta, depende de las necesidades del proyecto ...
Symfony se debe usar en proyectos ''grandes'' con servidores rápidos.
Yii sigue siendo un marco "ligero", pero es muy rápido en comparación con Symfony, y tiene una curva de aprendizaje corta ...
... etc
Bueno. NO estoy preguntando cuál es mejor. Sé que Yii no es mejor que Symfony, Symfony no es mejor que Yii.
Estoy preguntando cuál debería ir con eso.
Quiero dar algunos puntos:
Tengo un proyecto grande que está muy bien formateado y muy bien codificado. Si vieras mis códigos, pensarías que hice mi propio marco, pero no es así. Está muy bien codificado. Estoy usando controladores personalizados para solicitudes HTTP.
Todo lo que quiero hacer es hacer que mi código sea mucho más fácil de usar y mucho más fácil de entender y de editar . Componente por componente de edición y ampliación .
También estoy usando Zend Framework como componente pero no como base de framework.
Entonces, como desarrolladores , qué marco de proyecto para la codificación base realmente lo acepto. ¿Yii o Symfony?
De hecho, me encantaba Yii, pero el sistema de paquetes de Symfony y los espacios de nombres me atraen. Pero realmente me pregunto a cuál debería ir.
Como dije, no estoy preguntando cuál es mejor. Quiero hablar sobre este tema.
Estoy abierto a sugerencias. Dame un camino.
Yii es probablemente el "marco" más verdadero de todas las opciones: proporciona el andamiaje que necesita sin casi ninguna suposición sobre cómo preferiría implementar algo (excepto tal vez la inclusión de jQuery). Es increíblemente rápido de desarrollar con, y muy, muy rápido de ejecutar, lo que se traduce en una excelente escalabilidad.
Los proyectos en los que he usado Yii siempre han terminado antes de lo previsto: parece que Yii tiene sentido en la forma en que funciona. Mi experiencia con Symfony es limitada, lo admitiré, pero en comparación con Zend Yii es muy fácil. El generador Gii MVC también es una fantástica ventaja, ya que genera modelos y códigos CRUD básicos a partir de las tablas de la base de datos.
Todo esto es solo mi opinión por mi propia experiencia, pero eso es lo que pediste :)
Creo que lo que buscas es ver cuáles son las recomendaciones más que cualquier Evangelismo.
Solo para dar algunos consejos sobre cuál es el estado actual de PHP, y buenos componentes que usan las últimas características de php .
Requisitos
Asegúrate de que lo que usas tenga una forma de ...
- enviar al registro (Monolog es bueno)
- parse text only config (YAML es bueno)
- plantillas sin lógica, con alguna convención (Mustach, Twig)
- definición de dependencias se manifiesta (Composer es el camino a seguir, muy similar al
package.json
que ofrece Node) - definir el mecanismo de instanciación de "servicio" común (
DependencyInjection
es un ejemplo) - forma resumida para cargar bibliotecas (el componente
ClassLoader
es bueno) - Administración de localización (ver documentación de Symfony2 / Twig )
- llamadas a la base de datos abstracta sin hardcoding proveedor de base de datos específico (Doctrine2, Propel)
- Estructura de prueba unitaria, uso y convenciones (PHP Unit, Behat, Mink)
- El código de la base de datos no usa "
mysql
" y istead usamysqli
Y todos esos distintos paquetes de funcionalidades que puedes mezclar y combinar.
Mezcla y combina
Hay algunos esfuerzos en curso que abordan este tema exacto, aquí algunos interesantes:
- El PHP Framework Interop Group es un consorcio de colaboradores que representan frameworks y crearon algunos estándares, a saber, las tres capas conocidas como
PSR-0
,PSR-1
yPSR-2
- PHP The Right Way es un trabajo colaborativo sobre cuáles son las mejores prácticas actuales.
- La definición de Tobias Schlitt de un marco
Espero que esto te ayude. con su propia elección de en qué marco invertir.