En Internetría procuramos estar al día de las últimas tecnologías para poder escoger aquellas que mejor se ajustan a nuestras necesidades e incorporarlas a nuestros proyectos.

Hace un tiempo apostamos por Yii Framework para el desarrollo de nuestras aplicaciones web en PHP. Buscábamos un software libre (licencia BSD) que nos ayudara a realizar aplicaciones profesionales, rápidas, seguras y versátiles. Un software fácil de aprender, que nos permitiera acelerar el trabajo y que dispusiera de buena documentación y de una comunidad en crecimiento. Después de evaluar varios frameworks del mercado elegimos Yii por ser aparentemente el que cumplía con todos nuestros requisitos, y tras más de 1 año de experiencia trabajando con él podemos decir que ha superado con creces nuestras expectativas.

Está basado en programación orientada a objetos e implementa el patrón de diseño MVC (Modelo-Vista-Controlador ) cuyo fin es separar la lógica de negocio de la interfaz de usuario, haciendo que el código sea limpio, reutilizable y mantenible.

Adicionalmente utiliza un Front Controller (Controlador Frontal) llamado Application, el cual representa el único punto de acceso a la aplicación web para los usuarios, y cuya función es resolver las peticiones de éstos y remitírselas a los controladores apropiados para su posterior procesamiento.

Otra de sus características es que viene integrado con jQuery y con una serie de widgets Ajax que el desarrollador puede ampliar a su gusto para mejorar la usabilidad y la experiencia del usuario. Y soporta Database Access Objects (DAO), query builder, Active Record y migración de base de datos.

Permite con gran facilidad la creación y validación de formularios, así como la personalización de aspectos y temas. Y da soporte de autenticación y autorización via role-based access control (RBAC) jerarquico.

Las medidas de seguridad incluyen la prevención cross-site scripting (XSS), prevención cross-site request forgery (CSRF), prevención de la manipulación de cookies, etc. y proporciona soporte para crear y ejecutar pruebas unitarias y funcionales basadas en PHPUnit y Selenium, así como para el control de errores y logs.

Soporta generación automática de servicios web basados en complejos WSDL, especificaciones y administración de peticiones Web service, así como estándares para internacionalizaciónI18N y localización L10N.

Dispone de una herramienta web llamada Gii con la que poder generar código automáticamente a partir de nuestra base de datos. Esto puede no ser útil siempre, pero en los casos que sí lo es implica un significativo ahorro de tiempo en los primeros pasos del desarrollo al proporcionarnos un esqueleto básico e inicial que podemos personalizar a nuestro gusto.

Tiene un sistema de extensiones mantenido por una gran comunidad de desarrolladores y permite la integración de librerías de terceros (ej: PEAR, ZEND Framework) lo que amplía enormemente las posibilidades que existen para extender nuestro código.

Soporta cache de datos, cache de páginas, cache por fragmentos y contenido dinámico. Se considera un framework de alto rendimiento. La siguiente gráfica comparativa muestra su eficiencia en comparación con la de otros frameworks muy conocidos. Mide las RPS (peticiones por segundo), sin y con APC (Alternative PHP Cache), y se puede observar en la imagen cómo en éste último caso Yii destaca enormemente respecto a los otros.

Además yii es más rápido porque utiliza la técnica de Lazy loading (carga perezosa), es decir, las librerías no se cargan hasta que se tienen que utilizar. Por ejemplo, una clase no se importa hasta que que se usa por primera vez, y un objeto no se crea hasta que es accedido por primera vez.

Por todo lo expuesto Yii Framework puede usarse para crear aplicaciones de diversos tipos: aplicaciones de gran tráfico, foros, gestores de contenidos (CMS), tiendas electrónicas (e-commerce), etc.; Su uso puede acelerar significativamente el proceso de desarrollo. Y todo ésto unido al hecho de que su aprendizaje es mucho más asequible que el de otros frameworks del mercado ha supuesto para nosotros una acertada elección.

2 Replies to “Nuestra elección para PHP”
Deja un comentario

*