Ads 468x60px

Perfil

martes, 5 de febrero de 2013

Zend Framework Parte 1


IntroducciĂłn y primera aplicaciĂłn

Zend Framework es un framework1 open source para PHP desarrollado por Zend la empresa encargada
de la mayor parte de las mejoras hechas a PHP. Zend Framework implementa el patron MVC es 100%
orientado a objetos, sus componentes tienen un bajo acoplamiento es posible usarlos de forma independiente
y brinda un estándar de codificación.
CaracterĂ­sticas:

  • Cuenta con soporte para internalizaciĂłn y localizaciĂłn de aplicaciones construir sitios multi-idioma, convertir formatos de fechas, monedas, etc.
  • Facilita el setup y brinda herramientas para crear la estructura de directorios y clases por lĂ­nea de comandos.
  • IntegraciĂłn con PHPUnit por medio de Zend_Test para facilitar el testing de la aplicaciĂłn.
  • Tiene adapters para diversos tipos de bases de datos, brinda componentes para la autenticaciĂłn y autorizaciĂłn de usuarios, envĂ­o de mails, cache en varios formatos, creaciĂłn de web services, etc.

La idea es invertir menos tiempo en el desarrollo y hacer uso de componentes ya testeados.

InstalaciĂłn

1 | Descarga la Ăşltima versiĂłn de Framework desde el sitio oficial.
2 | Cuando la tengas descargada creamos una estructura de directorios, puedes crearla automáticamente con Zend_Tool_Framework, o puedes hacerlo manualmente.

Si te fijas en la figura tenemos unos archivos básicos para crear y lo haremos paso a paso.

Action Controllers

Los controladores son clases que extienden de Zend_Controller_Action cada controlador tiene unos
mĂ©todos especiales cuya nombre tiene el sufijo “Action” y denominados “action methods”.
Por default las URLs en Zend Framework son del tipo /controlador/action es decir que si en
nuestro IndexController tenemos un “pruebaAction” lo podremos ejecutar desde /index/prueba.


  • La estructura es simple en el mĂ©todo init() se agregan tareas de inicializaciĂłn y creamos unaction llamado index.
  • Al ejecutarlo, Zend Framework automáticamente relaciona el nombre del action con una vista que será renderizada.
  • Esta vista tiene la extensiĂłn phml en el caso del indexAction la vista asociada será index.phtml dentro de la carpeta correspondiente al controlador index en views/scripts.

ErrorController

El controlador será ejecutado cada vez que se quiera llamar una página que no existe (error 404) o se
produzca algĂşn error en la aplicaciĂłn (error 500).


Configurando el htaccess y el index.php
En htaccess: aplicamos el patrĂłn Front Controller y redirigir todas las peticiones al index.php
luego decidir la página para mostrar.
RewriteEngine On
RewriteRule !\.(js|ico|txt|gif|jpg|png|css|pdf)$ index.php


Bootstrap y application.ini

En el index hacemos referencia al archivo application.ini que configura el sitio pero que aĂşn no
creamos pero haremos algo simple:

Ahora, creamos el Bootstrap registrando en el autoloader el namespace de nuestra aplicaciĂłn para instanciar las clases que usemos sin necesidad de hacer antes un include de dicho archivo:

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initAutoloader() {
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace(‘App_’)->setFallbackAutoloader(true);
$resourceAutoloader = new Zend_Loader_Autoloader_Resource(
array(
‘basePath’ => APPLICATION_PATH,
‘namespace’ => ‘App’,
‘resourceTypes’ => array(
‘form’ => array(‘path’ => ‘forms/’, ‘namespace’ => ‘Form’),
‘model’ => array(‘path’ => ‘models/’, ‘namespace’ => ‘Model’)
)
)
);
}}

En otro capitulo seguiremos indagando sobre este framework


0 comentarios: