¿Qué es Symfony?
El framework symfony es un conjunto de relacionados, pero independientes sub-frameworks, que forman un completo framework MVC (Modelo, Vista, Controlador). Antes de la codificación inicial, nos tomamos un tiempo para leer la historia y la filosofía de symfony. Entonces, comprobamos del framework sus requisitos previos y usamos el script check_configuration.php para validar tu configuración.
Finalmente, instalamos symfony. Después de algún tiempo también desearás actualizar a la última versión del framework.
El framework también proporciona herramientas para facilitar el despliegue.
El Modelo
La parte del Modelo de symfony se puede hacer con la ayuda del ORM Doctrine. Basado en la descripción de la base de datos, esta genera las clases para los objetos, formularios, y filtros. Doctrine también genera las sentencias SQL utilizada para crear las tablas en la base de datos. La configuración de la base de datos se puede hacer con una tarea o editando un archivo de configuración. Además de su configuración, también es posible hacer la inyección inicial de datos, gracias a los archivos de datos. Puede incluso hacer que estos archivos sean dinámicos.
Los objetos Doctrine también puede ser fácilmente internacionalizados.
La Vista
De forma predeterminada, la capa de la Vista de la arquitectura MVC utiliza archivos PHP planos como plantillas.
Las plantillas puede utilizar helpers para tareas recurrentes como crear una URL o un enlace. Una plantilla puede ser decorada por un layout para abstraerse del encabezado y pie de las páginas. Para hacer vistas aún más reutilizables, puedes definir slots, partials, y componentes.
Para acelerar las cosas, puedes utilizar el sub-framework del cache para guardar en cache una página entera, solo la acción, o tan solo partials o componentes. También puedes eliminar el cache manualmente.
El Controlador
La parte del Controlador es gestionado por controladores frontales y acciones.
Las tareas se puede utilizar para crear simples módulos, módulos CRUD, o aun para generar completos y funcionales módulos admin para las clases del modelo.
Los módulos admin te permiten construir una aplicación completamente funcional sin codificación alguna.
Para abstraer la implementación técnica de un sitio web, symfony utiliza un sub-framework enrutamiento que genera URLs amigagles. Para hacer la implementación de servicios web aún más fácil, symfony soporta formatos en forma nativa. También puedes crear tus propios formatos.
Una acción puede ser reenviada a otra, o redirigida.
La Configuración
El framework symfony hace que sea fácil tener diferentes ajustes de configuración para distintos entornos. Un entorno es un conjunto de ajustes que permite diferentes comportamientos en los servidores de desarrollo o de producción. También puedes crear nuevos [entornos].
Los archivos de configuración de symfony puede definirse en diferentes niveles y la mayoría de ellos son conscientes del entorno:
* app.yml
* cache.yml
* databases.yml
* factories.yml
* generator.yml
* routing.yml
* schema.yml
* security.yml
* settings.yml
* view.yml
La mayoría de los archivos de configuración usan el formato YAML.
En lugar de utilizar la estructura de directorios por defecto y organizar tus archivos de aplicaciones por capas, también puedes organizarlos por función, y agruparlos en un plugin. Hablando de la estructura de directorios por defecto, también puedes personalizarla de acuerdo a tus necesidades.
La Depuración
Desde el logging hasta la la barra de herramientas de depuración web, y las significativas excepciones, symfony proporciona un montón de herramientas útiles para ayudar a los desarrolladores a depurar problemas con mayor rapidez.
Los Principales Objetos de Symfony
Los frameworks de symfony proporciona un buen número de objetos básicos que nos abstraen de necesidades recurrentes en los proyectos web: la petición, la respuesta, el usuario, el logging, las rutas, y el administrador del cache .
Estos objetos básicos son gestionados por el objetos sfContext, y que se configuran a través de las factorias.
El objeto user gestiona la autenticación, autorización, flashes, y atributos para ser guardado en la sesión.
Tomado de : http://www.symfony-project.org/jobeet/1_2/Doctrine/es/24
No hay comentarios:
Publicar un comentario