martes, 11 de febrero de 2014

Filosofía de ZendFramework

Zend Framework son un conjunto de librerías para el desarrollo de aplicaciones PHP creadas por al empresa Zend. Zend está detrás de Zend Framework pero son muchas más las empresas que han aportado para que este proyecto evolucione y tenga una continuidad en el tiempo.
Zend Framework se basa en una arquitectura Modelo-Vista-Controlador.



  • Modelo: Ofrece una capa de abstracción sobre los datos de nuestra aplicación, aporta las funcionalidades básicas de rutinas de acceso a los datos.
  • Vista: Es la encargada de la representación de los datos de la capa Modelo, es la encargada de aportar las funcionalidades básicas de interacción de los usuarios y nuestra aplicación.
  • Controlador: Es el encargado de gestionar las peticiones de interacción con nuestras vistas y el árbitro que gestiona el flujo de datos de nuestra aplicación.
A grandes rasgos podemos decir que cada modelo que define nuestra lógica de la aplicación tendrá un controlador asociado, el cual nos definirá las posibles acciones que sobre el modelo de datos se podrá interaccionar, así como las diferentes vistas en forma de HTML que tendrá como resultado la ejecución de las acciones del controlador.

La arquitectura de directorios básica de Zend Framework tiene como elementos principales:
  • application: es donde tendremos ubicados todos los elementos de la arquitectura Modelo-Vista-Controlador. Dentro encontraremos las carpetas models, viewscontrollers, correspondientes a la ubicación de los modelos, vistas y controladores. Además en application encontraremos la carpeta configs donde definiremos los parámetros de configuración de la aplicación.
  • docs: Destinado a la documentación de nuestra aplicación.
  • library: En esta carpeta irá el código de nuestras librerías, eso incluye si se desea Zend Framework, aunque es más flexible tener Zend Framework en una ubicación común a todas las aplicaciones y definir su ruta en el include_path del php.ini.
  • public: Carpeta donde irán ubicados todos los archivos requeridos por el servidor al servir las vistas, tales como ficheros css, imágenes, etc.
  • test: Directorio destinado a los scripts de prueba, pueden escribirse a mano, test PHPUnit, etc.
Cabe destacar dentro del directorio public el archivo index.php, es el encargado de iniciar toda la aplicación instanciando un objeto del tipo Zend_Application y lanzando el método run de la clase Bootstrap.
La clase Bootstrap está en la raíz del directorio application, en el fichero Bootstrap.php, su propósito es inicializar la aplicación, ajustar las preferencias del entorno (la zona horaria, el nivel del error_reporting, etc), además de otros ajustes específicos al procesamiento que hace la aplicación de las vistas como por ejemplo la codificación.



No hay comentarios:

Publicar un comentario