capacitacion kumbia php framework
DESCRIPTION
Laminas utilizadas durante la capacitación Fundacite Mérida.TRANSCRIPT
![Page 1: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/1.jpg)
Enero 2009
Deivinson Tejeda
Team Developer
Capacitación Kumbia PHP Framework
Fundacite Mérida
![Page 2: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/2.jpg)
2
Objetivos de la Capacitación
introducir al usuario a la utilización de Kumbia, como framework de desarrollo de software de forma básica, media y avanzada, apoyado en las mejores prácticas
del mercado.
![Page 3: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/3.jpg)
3
Introducción a Kumbia PHP Framework
En un mercado actual inundado de frameworks MVC que prometen ser la solución de desarrollo a cualquier tipo de
proyecto, Kumbia pretende ser una solución a cualquier tipo de probelma y persona desde el principiante, pasando por el desarrollador que no tiene tiempo para aprender un nuevo framework hasta la empresa de desarrollo de software. Lo
importante es que exista una necesidad y que Kumbia pueda ayudarte a hacerla realidad.
“...Porque programar debería ser mas fácil..”
![Page 4: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/4.jpg)
MVC como arquitectura
Base de Datos
Browser envía una Petición
Base de Datos
La petición es analizada y enviada al controlador que toma las decisiones lógicas e interactúa con las vistas y los modelos
El controlador llama una vista para mostrarle la información al usuario
![Page 5: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/5.jpg)
5
Ventajas de la arquitectura MVC
Separación lógica de negocio de la lógica de diseño.Desarrollo en varios niveles.Distribuir el trabajo, cada grupo es abstraído del resto.Reduce la complejidad y acelera el proceso de ensamblar o desensamblar alguna capa.
![Page 6: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/6.jpg)
6
Que hace Kumbia?
Define una filosofíafilosofía de trabajo.ProporcionaProporciona librerías y funciones.AhorraAhorra trabajo y tiempo.Producir aplicaciones más fácil de mantenerfácil de mantener.Evitar duplicarduplicar código.Crear aplicaciones Multi-CapasMulti-Capas
![Page 7: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/7.jpg)
7
Porque Kumbia?
Implementa los mejoras patrones de diseño.Fomenta las características de la web 2.0.Preocuparse por interfaces, lógica y procesos más intuitivos y prácticos para usuarios.Atacar necesidades reales y no desarrollar en supuestos de utilidad.Curva de aprendizaje es muy corta.Kumbia habla español :)
![Page 8: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/8.jpg)
8
Creación de proyectos (Instalación)
Pre-requisitosServidor web.PHP5.
InstalaciónDescargar el framework.Habilitar mod_rewrite o re-escritura de URLsColocar el framework en el DocumentRoot.
![Page 9: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/9.jpg)
9
Estructura de Kumbia
![Page 10: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/10.jpg)
10
Vamos a la acción...
“Hola Mundo”Para nosotros “Hola Kumbia”.Recordemos el MVC.Creamos el Controlador saludo_controller.phpsaludo_controller.phpCreamos el directorio de las vistas del Controlador.Creamos la vista de la acción.Ejecutamos el controller
http://localhost/kumbia/saludo/
![Page 11: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/11.jpg)
11
Kumbia y su URL's
http://localhost/kumbia/saludo/index/
Dominiohttp://localhost
Aplicación/kumbia
Acción/index
Controller/saludo
![Page 12: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/12.jpg)
12
Kumbia y su URL's
http://localhost/kumbia/prueba/saludo/index/20/
Dominiohttp://localhost
Controlador/prueba
Aplicación/kumbia
Modulo/prueba
Acción/index
Parámetros/20
![Page 13: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/13.jpg)
13
Request (Petición)
Nuevo RequestUrl: articulos/ver/123
Mod_rewrite a index.phpapp/public/index.php
RouterAnaliza la url pasada
DispatcherCarga el controlador adecuado
Routes.iniAnaliza si la url esta enrutada
ControllerEjecuta la acción
before_filterPlugins
after_filterPlugins
Plugins (hooks)
Models
Partials
Layouts
Templates
Views
Helpers
![Page 14: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/14.jpg)
14
Que es el Dispatcher?
DispatcherExceptionSolicita información
al Router(Controller, Action, Param)
DISPATCHER
Existe Controller
No
Instancia ControllerNew Controller()
S
i
Ejecuta before_filter()run_before_filter()
Ejecuta la actionController->action()
Ejecuta after_filter()run_after_filter()
RouterObtuvo la Información
de la URL
Serializa ControllerQue no sean modelos
Modelos como atributos
$this->models
No Existe
El DispatcherEs el componentede kumbia, que obtiene mediante
El Router, El controlador y laacción a ejecutar,
así como losparámetros adicionales
pasados
![Page 15: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/15.jpg)
15
La Constante KUMBIA_PATH
La re-escritura de URL lleva algunas confusionesconfusiones cuando queremos incluir img, css, js, etc y un ejemplo es http://localhost/kumbia/saludo/
Podríamos pensar incluir una imagen en nuestra vista <img alt='mi imagen' src='img/ok.gif' />
La trampa: es falso falso aunque el HTML es válidohttp://localhost/kumbia/saludo/img/ok.gifLa ruta que deseamos incluir es:http://localhost/kumbia/img/ok.gif
![Page 16: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/16.jpg)
16
Controladores y Acciones por defecto
Para controlador kumbia creara una instancia de la clase ControllerBase y ejecutara el método init().Para una acción kumbia buscara el método index() ya sea en el controlador o cualquiera de sus clases padres.
http://localhost/kumbia/ Controlador: ControllerBaseAccion: init()
http://localhost/kumbia/saludo/ Controlador: SaludoControllerAccion: index()
Controlador: ControllerBaseAccion: init()Controlador: ControllerBaseAccion: init()
http://localhost/kumbia/saludo/hola/ Controlador: SaludoControllerAccion: hola()
![Page 17: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/17.jpg)
Enero 2009
Deivinson Tejeda
Team Developer
Templates, Layouts, ViewsKumbia PHP Framework
![Page 18: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/18.jpg)
18
Que son las vistas?
Kumbia posea un sistema de presentación basado en viewsSistema de plantillas y vistas que son re-utilizableLas vistas deberían contener una cantidad mínima de código PHP.
![Page 19: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/19.jpg)
19
Porque usar Vistas?
HEADER
FOOTER
SIDEBAR CONTENTPartials
Layouts
Templates
HelpersViews
![Page 20: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/20.jpg)
20
Estructura del Sistema de Vistas
views/templates/index.phtml
views/layouts/menu.phtml
views/controller/index.phtml
views/controller/partials/partials.phtml
![Page 21: Capacitacion Kumbia PHP Framework](https://reader031.vdocuments.pub/reader031/viewer/2022020715/55645210d8b42a9f128b57aa/html5/thumbnails/21.jpg)
21
Enlaces...
Sitio Web
http://www.kumbiaphp.com
Wiki
http://wiki.kumbiaphp.comSourceForge
http://sourceforge.net/projects/kumbia/
Launchpad
https://launchpad.net/kumbia
Forohttp://www.kumbiaphp.com/foro
Lista de Correo
http://groups.google.com/group/kumbia?hl=es
Deivinson Tejeda