SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Capacitación
Kumbia PHP Framework

                       Deivinson Tejeda
Fundacite Mérida
Enero 2009                Team Developer
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.




                                                            2
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..”




                                                                  3
MVC como arquitectura
               Browser envía
                una Petición
                               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
                                                  Base de
                                                   Datos
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.




                                                              5
Que hace Kumbia?


 Define una filosofía de trabajo.
 Proporciona librerías y funciones.
 Ahorra trabajo y tiempo.
 Producir aplicaciones más fácil de mantener.
                                    mantener
 Evitar duplicar código.
 Crear aplicaciones Multi-Capas




                                                6
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 :)




                                                           7
Creación de proyectos (Instalación)

  Pre-requisitos
         Servidor web.
         PHP5.
  Instalación
         Descargar el framework.
         Habilitar mod_rewrite o re-escritura de URLs
         Colocar el framework en el DocumentRoot.




                                                        8
Estructura de Kumbia




                       9
Vamos a la acción...



  “Hola Mundo”
        Para nosotros “Hola Kumbia”.
        Recordemos el MVC.
        Creamos el Controlador saludo_controller.php
        Creamos el directorio de las vistas del Controlador.
        Creamos la vista de la acción.
        Ejecutamos el controller
               http://localhost/kumbia/saludo/




                                                               10
Kumbia y su URL's

                  http://localhost/kumbia/saludo/index/


     Dominio
   http://localhost


                       Aplicación
                         /kumbia


                                        Controller
                                          /saludo


                                                          Acción
                                                          /index



                                                                   11
Kumbia y su URL's

            http://localhost/kumbia/prueba/saludo/index/20/

   Dominio
 http://localhost

             Aplicación
               /kumbia

                          Modulo
                          /prueba

                                    Controlador
                                      /prueba

                                                  Acción
                                                  /index

                                                           Parámetros
                                                              /20
                                                                        12
Request (Petición)

                         Nuevo Request
                           Url: articulos/ver/123




                     Mod_rewrite a index.php
                           app/public/index.php


   Plugins (hooks)              Router                        Routes.ini
                           Analiza la url pasada       Analiza si la url esta enrutada


    before_filter
                             Dispatcher
        Plugins
     after_filter      Carga el controlador adecuado
        Plugins

                              Controller
                                                                             Models
                             Ejecuta la acción



                       Templates
                               Layouts                      Helpers
                                       Views
                                                            Partials


                                                                                         13
Que es el Dispatcher?

                                                       DISPATCHER

      Router                Solicita información
                                                                                  No
                                                                Existe
 Obtuvo la Información                                                                  DispatcherException
                                  al Router                    Controller
      de la URL          (Controller, Action, Param)

                                                                 S
   El Dispatcher
                                                                i
 Es el componente                                       Instancia Controller
  de kumbia, que                                            New Controller()
 obtiene mediante
     El Router,
                                                       Ejecuta before_filter()
 El controlador y la
                                                           run_before_filter()
                            Modelos como
 acción a ejecutar,
                                                                                       No Existe
                              atributos
    así como los
                               $this->models
    parámetros                                           Ejecuta la action
    adicionales                                            Controller->action()
      pasados
                                                       Ejecuta after_filter()
                                                            run_after_filter()



                                                        Serializa Controller
                                                          Que no sean modelos




                                                                                                              14
La Constante KUMBIA_PATH

 La re-escritura de URL lleva algunas confusiones
 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 aunque el HTML es válido
       http://localhost/kumbia/saludo/img/ok.gif
       La ruta que deseamos incluir es:
       http://localhost/kumbia/img/ok.gif




                                                              15
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.

                                       Controlador: ControllerBase
                                        Controlador: ControllerBase
  http://localhost/kumbia/             Accion: init()
                                        Accion: init()



                                       Controlador: SaludoController
 http://localhost/kumbia/saludo/       Accion: index()



                                       Controlador: SaludoController
http://localhost/kumbia/saludo/hola/   Accion: hola()


                                                                       16
Templates, Layouts, Views
Kumbia PHP Framework
                            Deivinson Tejeda
Enero 2009                     Team Developer
Que son las vistas?

  Kumbia posea un sistema de presentación basado en
  views
  Sistema de plantillas y vistas que son re-utilizable
  Las vistas deberían contener una cantidad mínima de
  código PHP.




                                                         18
Porque usar Vistas?


                                     HEADER
Templates
                Helpers
    Layouts
        Views

                Partials
                                        CONTENT
                           SIDEBAR




                                     FOOTER




                                                  19
Estructura del Sistema de Vistas


       views/templates/index.phtml
          views/layouts/menu.phtml

               views/controller/index.phtml




                  views/controller/partials/partials.phtml




                                                             20
Enlaces...

  Sitio Web
           http://www.kumbiaphp.com
  Wiki
           http://wiki.kumbiaphp.com
  SourceForge
           http://sourceforge.net/projects/kumbia/
  Launchpad
           https://launchpad.net/kumbia
  Foro
           http://www.kumbiaphp.com/foro
  Lista de Correo
           http://groups.google.com/group/kumbia?hl=es

                             Deivinson Tejeda
                     deivinsontejeda@kumbiaphp.com


                                                         21

Más contenido relacionado

La actualidad más candente

Javier Ramirez Rails Plugins Pdf
Javier Ramirez Rails Plugins PdfJavier Ramirez Rails Plugins Pdf
Javier Ramirez Rails Plugins Pdfjavier ramirez
 
Programa en Rails como si Jugases con Lego. Javier Ramirez
Programa en Rails como si Jugases con Lego. Javier RamirezPrograma en Rails como si Jugases con Lego. Javier Ramirez
Programa en Rails como si Jugases con Lego. Javier Ramirezjavier ramirez
 
Rails Plugins. Javier Ramirez
Rails Plugins. Javier RamirezRails Plugins. Javier Ramirez
Rails Plugins. Javier Ramirezjavier ramirez
 
Desarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPDesarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPJavier López López
 
ORMphp Beta v1.0 - Presentación
ORMphp Beta v1.0 - PresentaciónORMphp Beta v1.0 - Presentación
ORMphp Beta v1.0 - PresentaciónGermán Peraferrer
 
SG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelSG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelDomingo Suarez Torres
 
Pleased to meet you, Laravel
Pleased to meet you, LaravelPleased to meet you, Laravel
Pleased to meet you, LaravelRolando Caldas
 
Tutorial de cakePHP itst
Tutorial de cakePHP itstTutorial de cakePHP itst
Tutorial de cakePHP itstomicx
 
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularDesarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularFreelancer
 
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)Domingo Suarez Torres
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaEudris Cabrera
 
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...JaenFrankcezco
 

La actualidad más candente (20)

Javier Ramirez Rails Plugins Pdf
Javier Ramirez Rails Plugins PdfJavier Ramirez Rails Plugins Pdf
Javier Ramirez Rails Plugins Pdf
 
Programa en Rails como si Jugases con Lego. Javier Ramirez
Programa en Rails como si Jugases con Lego. Javier RamirezPrograma en Rails como si Jugases con Lego. Javier Ramirez
Programa en Rails como si Jugases con Lego. Javier Ramirez
 
Rails Plugins. Javier Ramirez
Rails Plugins. Javier RamirezRails Plugins. Javier Ramirez
Rails Plugins. Javier Ramirez
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Rails intro
Rails introRails intro
Rails intro
 
Desarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHPDesarrollo Web con Kohana Framework PHP
Desarrollo Web con Kohana Framework PHP
 
ORMphp Beta v1.0 - Presentación
ORMphp Beta v1.0 - PresentaciónORMphp Beta v1.0 - Presentación
ORMphp Beta v1.0 - Presentación
 
SG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelSG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache Camel
 
Manualcake
ManualcakeManualcake
Manualcake
 
Apache Camel
Apache CamelApache Camel
Apache Camel
 
Pleased to meet you, Laravel
Pleased to meet you, LaravelPleased to meet you, Laravel
Pleased to meet you, Laravel
 
Tutorial de cakePHP itst
Tutorial de cakePHP itstTutorial de cakePHP itst
Tutorial de cakePHP itst
 
MVC en CakePHP 2.0
MVC en CakePHP 2.0MVC en CakePHP 2.0
MVC en CakePHP 2.0
 
9.laravel
9.laravel9.laravel
9.laravel
 
Jpa modelos de componentes
Jpa   modelos de componentesJpa   modelos de componentes
Jpa modelos de componentes
 
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularDesarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
 
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en Java
 
CakePHP
CakePHPCakePHP
CakePHP
 
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...
Introduccion, Instalacion, Configuracion e Implementacion Framework ZanPHP IT...
 

Similar a Capacitacion Kumbia PHP Framework

Frameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITESFrameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITESJesus Caceres Tello
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Frameworkexcedesoft
 
Introducción a Cake PHP Framework
Introducción a Cake PHP FrameworkIntroducción a Cake PHP Framework
Introducción a Cake PHP FrameworkJomicast
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)Senior Dev
 
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptxSibilinoAndante
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxRunayli
 
Ruby On Rails Intro
Ruby On Rails IntroRuby On Rails Intro
Ruby On Rails IntroThirdWay
 
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corporacion de Industrias Tecnologicas S.A.
 
UDA-Guia de desarrollo
UDA-Guia de desarrolloUDA-Guia de desarrollo
UDA-Guia de desarrolloAnder Martinez
 
Documento Proyecto 1
Documento Proyecto 1Documento Proyecto 1
Documento Proyecto 1Boris Perez
 
Entrega Proy 1 Sist Dist
Entrega Proy 1 Sist DistEntrega Proy 1 Sist Dist
Entrega Proy 1 Sist DistBoris Perez
 
Servlets exposicion
Servlets exposicionServlets exposicion
Servlets exposicionFlashnet S.A
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosJaziel Torres
 

Similar a Capacitacion Kumbia PHP Framework (20)

Frameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITESFrameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITES
 
Modelo mvc
Modelo mvcModelo mvc
Modelo mvc
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Framework
 
Mvc
MvcMvc
Mvc
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Introducción a Cake PHP Framework
Introducción a Cake PHP FrameworkIntroducción a Cake PHP Framework
Introducción a Cake PHP Framework
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)
 
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
 
MVC
MVCMVC
MVC
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptx
 
Ruby On Rails Intro
Ruby On Rails IntroRuby On Rails Intro
Ruby On Rails Intro
 
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
 
UDA-Guia de desarrollo
UDA-Guia de desarrolloUDA-Guia de desarrollo
UDA-Guia de desarrollo
 
Spring Mvc Final
Spring Mvc FinalSpring Mvc Final
Spring Mvc Final
 
Asp
AspAsp
Asp
 
Documento Proyecto 1
Documento Proyecto 1Documento Proyecto 1
Documento Proyecto 1
 
Entrega Proy 1 Sist Dist
Entrega Proy 1 Sist DistEntrega Proy 1 Sist Dist
Entrega Proy 1 Sist Dist
 
Servlets exposicion
Servlets exposicionServlets exposicion
Servlets exposicion
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Integrando AngularJS y drupal
Integrando AngularJS y drupalIntegrando AngularJS y drupal
Integrando AngularJS y drupal
 

Último

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 

Último (20)

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 

Capacitacion Kumbia PHP Framework

  • 1. Capacitación Kumbia PHP Framework Deivinson Tejeda Fundacite Mérida Enero 2009 Team Developer
  • 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. 2
  • 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..” 3
  • 4. MVC como arquitectura Browser envía una Petición 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 Base de Datos
  • 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. 5
  • 6. Que hace Kumbia? Define una filosofía de trabajo. Proporciona librerías y funciones. Ahorra trabajo y tiempo. Producir aplicaciones más fácil de mantener. mantener Evitar duplicar código. Crear aplicaciones Multi-Capas 6
  • 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 :) 7
  • 8. Creación de proyectos (Instalación) Pre-requisitos Servidor web. PHP5. Instalación Descargar el framework. Habilitar mod_rewrite o re-escritura de URLs Colocar el framework en el DocumentRoot. 8
  • 10. Vamos a la acción... “Hola Mundo” Para nosotros “Hola Kumbia”. Recordemos el MVC. Creamos el Controlador saludo_controller.php Creamos el directorio de las vistas del Controlador. Creamos la vista de la acción. Ejecutamos el controller http://localhost/kumbia/saludo/ 10
  • 11. Kumbia y su URL's http://localhost/kumbia/saludo/index/ Dominio http://localhost Aplicación /kumbia Controller /saludo Acción /index 11
  • 12. Kumbia y su URL's http://localhost/kumbia/prueba/saludo/index/20/ Dominio http://localhost Aplicación /kumbia Modulo /prueba Controlador /prueba Acción /index Parámetros /20 12
  • 13. Request (Petición) Nuevo Request Url: articulos/ver/123 Mod_rewrite a index.php app/public/index.php Plugins (hooks) Router Routes.ini Analiza la url pasada Analiza si la url esta enrutada before_filter Dispatcher Plugins after_filter Carga el controlador adecuado Plugins Controller Models Ejecuta la acción Templates Layouts Helpers Views Partials 13
  • 14. Que es el Dispatcher? DISPATCHER Router Solicita información No Existe Obtuvo la Información DispatcherException al Router Controller de la URL (Controller, Action, Param) S El Dispatcher i Es el componente Instancia Controller de kumbia, que New Controller() obtiene mediante El Router, Ejecuta before_filter() El controlador y la run_before_filter() Modelos como acción a ejecutar, No Existe atributos así como los $this->models parámetros Ejecuta la action adicionales Controller->action() pasados Ejecuta after_filter() run_after_filter() Serializa Controller Que no sean modelos 14
  • 15. La Constante KUMBIA_PATH La re-escritura de URL lleva algunas confusiones 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 aunque el HTML es válido http://localhost/kumbia/saludo/img/ok.gif La ruta que deseamos incluir es: http://localhost/kumbia/img/ok.gif 15
  • 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. Controlador: ControllerBase Controlador: ControllerBase http://localhost/kumbia/ Accion: init() Accion: init() Controlador: SaludoController http://localhost/kumbia/saludo/ Accion: index() Controlador: SaludoController http://localhost/kumbia/saludo/hola/ Accion: hola() 16
  • 17. Templates, Layouts, Views Kumbia PHP Framework Deivinson Tejeda Enero 2009 Team Developer
  • 18. Que son las vistas? Kumbia posea un sistema de presentación basado en views Sistema de plantillas y vistas que son re-utilizable Las vistas deberían contener una cantidad mínima de código PHP. 18
  • 19. Porque usar Vistas? HEADER Templates Helpers Layouts Views Partials CONTENT SIDEBAR FOOTER 19
  • 20. Estructura del Sistema de Vistas views/templates/index.phtml views/layouts/menu.phtml views/controller/index.phtml views/controller/partials/partials.phtml 20
  • 21. Enlaces... Sitio Web http://www.kumbiaphp.com Wiki http://wiki.kumbiaphp.com SourceForge http://sourceforge.net/projects/kumbia/ Launchpad https://launchpad.net/kumbia Foro http://www.kumbiaphp.com/foro Lista de Correo http://groups.google.com/group/kumbia?hl=es Deivinson Tejeda deivinsontejeda@kumbiaphp.com 21