Kohana: framework PHP basado en CodeIgniter

kohana.pngKohana es un framework de PHP que deriva de CodeIgniter, el cual ya he comentado aquí que me gusta bastante. Basado inicialmente en CI, posee las mismas características que este: seguro, liviano, fácil de aprender, MVC, compatible con UTF-8 y fácilmente extensible.

¿Qué diferencias existen entre CI y Kohana?

  • PHP5: es estrictamente PHP, lo que aporta la programación orientada a objetos.
  • El diseño de patrones MVC continua el de CI: por lo que, aunque son diferentes, un usuario de CI no tendrá problemas para adaptarse al de Kohana.
  • Dirigido por una comunidad: no por una empresa, una comunidad de desarrolladores puede dar respuestas más rápidas al no estar limitadas por las decisiones de una empresa.
  • Los datos GET, POST, COOKIE y SESSION funcionan como se esperan: no se limita su uso, aunque si se ofrece el mismo tratamiento ante ataques XSS que ofrece CI.
  • Recursos, modulos y herencia en cascada: los controladores, librerías, helpers y vistas pueden ser cargados desde cualquier lugar de la aplicación, del sistema o de módulos. Las opciones de configuración se heredan y pueden ser modificadas dinámicamente por cada aplicación.
  • No hay conflictos de nomenclaturas: se usan sufijos en las clases (por ejemplo _Controller) para evitar conflictos.
  • Carga automática de clases: las librerías, controladores, modelos y helpers no se precargan, sino que se cargan dinámicamente cuando se solicitan.
  • Los helpers son clases estáticas y no funciones: en vez de usar form_open() usaríamos form::open().
  • Consistencia en las librerías y el API: por ejemplo el almacenamiento de sesiones múltiples existe (BD, cookies, …), usando interfaces y clases que extienden de ésta, podemos desarrollar en nuestra librerías nuevas clases que amplíen la interfaz y que mantenga la consistencia del API.
  • Manejador de eventos: los eventos pueden ser añadidos, modificados o eliminados de forma dinámica, permitiendo cambios en la ejecución de los procesos sin tener que modificar el core.

Kohana

Similar Posts