Your SlideShare is downloading. ×
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit

3,926
views

Published on

Paper que muestra los cambios dados en la nueva estructura de directorios incorporada en la versión 1.0 Spirit de KumbiaPHP Framework http://www.kumbiaphp.com

Paper que muestra los cambios dados en la nueva estructura de directorios incorporada en la versión 1.0 Spirit de KumbiaPHP Framework http://www.kumbiaphp.com

Published in: Technology

6 Comments
3 Likes
Statistics
Notes
No Downloads
Views
Total Views
3,926
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
75
Comments
6
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. KumbiaPHP Fra m e w o rk Versión 1.0 Spirit Nueva estructura de directorios
  • 2. KumbiaPHP Fra m e w o rk KumbiaPHP Framework en su versión 1.0 incorpora un cambio en la estructura de directorios con la intención de desa- coplar el core del framework de nuestra aplicación (app) y of- recer mayor independencia de las aplicaciones, como se puede apreciar en el gráfico existen dos grandes directorios app y core. spirit aplicación1 aplicación2 aplicación[n] core
  • 3. KumbiaPHP Fra m e w o rk Ventajas de la nueva estructura de directorio • Mayor velocidad :-) • Cada aplicación tiene su propio frontcontroller. • Independencia total de nuestra aplicación respecto al core del framework. • Cada aplicación tendrá sus propios directorios (public, temp, helpers, etc). En versiones anteriores si se tenia 40 apli- caciones significaba que todo iba al mismo public (css, img, js, etc). • En cada actualización del framework, sólo se ha de pasar la carpeta de tu aplicación (“app”) a la nueva versión de kumbiaPHP Framework y ya tendremos la última versión del Framework.
  • 4. KumbiaPHP Fra m e w o rk Este será el directorio sobre el cual trabajamos el 90% mientras desarrolla- mos nuestra aplicación, observamos una lista de directorios y archivos vin- app “app” es el nombre de la aplicación culados a app. config controllers models helpers public temp views application model_base PHP PHP
  • 5. KumbiaPHP Fra m e w o rk spirit app1 app2 app3 app4 app[n] core core Pueden existir tantas carpetas como aplicaciones se necesiten.
  • 6. KumbiaPHP Fra m e w o rk Archivos de configura- estructura aplicación Son los archivos imá- ción del framework: genes, css, javascript y config config.ini, routes.ini, public files, que utilizara la apli- databases.ini, boot.ini cación Están agrupados los Este directorio contiene controladores (controllers) las carpetas y archivos controllers y/o módulos. Por defecto creados cuando Kumbia se encuentra el controller: PHP está cacheando un temp page_controller.php template, view o un partial y cuando se realiza opera- Están agrupados los ciones de logger (logs). models modelos (models) Necesita permisos de escritura. Contiene los helpers de usuarios, funciones, Están agrupadas las helpers librerías, etc, que necesite vistas de los controllers. la aplicación. Normalmente views Por defecto están los dir: desarrolladas por los template/, pages/, usuarios partials/ y errors/
  • 7. KumbiaPHP Fra m e w o rk application model_base PHP PHP Vamos a profundizar más en estos dos impor- tantisimos y a la vez grandes desconocidos, que nos permitiran agilizar muchisimo el pro- ceso de creación de nuestra aplicación si se usan correctamente.
  • 8. KumbiaPHP Fra m e w o rk Cada vez es mas usado en las aplicaciones creadas en PHP la Programación Orientada a Objetos (POO), KumbiaPHP Framework PHP fomenta el uso de la misma, debemos hacer especial hincapié en el archivo application.php application controllers el cual fue concebido como una superclase (ApplicationController) padre de todos los con- troladores. PHP PHP Controller1 Controller2
  • 9. KumbiaPHP Fra m e w o rk initialize() finalize() métodos Existe una estrecha relación entre apllication.php y los controladores disponibles en el directorio controllers. application superclase PHP Esta relación se basa principalmente en que las variables y metodos creados en el Applica- tionController (application.php), estarán dis- ponibles para ser usados en cualquier contro- lador que tengamos en nuestra aplicación. controladores PHP PHP Controller1 Controller2
  • 10. KumbiaPHP Fra m e w o rk initialize() finalize() métodos En esta class se encuentran dos métodos principales, dichos métodos se comportan como un filtro. El método Initialize() se ejecuta justo antes de application llamar al controller superclase PHP El método finalize() se ejecuta después de haber llamado al controller. controladores Controllers
  • 11. KumbiaPHP Fra m e w o rk hola($nombre) Veamos un ejemplo funcional de lo que podemos llegar a hacer controlando esta métodos superclase; Agregamos el método hola($nombre) con un parámetro. El método hola($nombre) estara disponible inmediatamente para todos los controla- application dores. superclase PHP Podríamos acceder directamente al método hola($nombre); de la siguiente manera: controladores http://dominio.com/controller/hola/jose PHP PHP Controller1 Controller2 http://dominio.com/controller2/hola/jose
  • 12. KumbiaPHP Fra m e w o rk Así, la forma en la que se relacionan los controladores con el ApplicationController quedaría resumida en el siguiente esquema:
  • 13. KumbiaPHP Fra m e w o rk De la misma manera que se relacionan los controladores con application.php, existe otra relación muy importante entre el archivo PHP model_base.php y los modelos de objeto model_base models ActiveRecord ubicados en: models/*.php | models/dir/*.php Los modelos aqui alojados representan las tablas de nuestra base de datos. PHP PHP model1 model2
  • 14. KumbiaPHP Fra m e w o rk before_save() métodos En la clase ActiveRecord existen una gran cantidad de CallBack, en los que podemos apoyarnos para construir la parte lógica de nuestra aplicación, además los podremos extender con metodos propios. model_base superclase En este ejemplo hemos usado el método ActiveRecord PHP before_save(), nos permite comprobar lo que necesitemos antes de guardar el regis- tro en la base de datos. modelos models
  • 15. KumbiaPHP Fra m e w o rk ActiveRecord Así, la forma en la que se relacionan los modelos con el ActiveRecord quedaría resumida como sigue: model1 model2
  • 16. KumbiaPHP Fra m e w o rk En este directorio se encuentra el núcleo de KumbiaPHP. core console docs extensions helpers kumbia scaffold test vendors views
  • 17. KumbiaPHP Fra m e w o rk Script de consola del console framework Plantilla para los scaffolds. Aquí están los archivos de scaffold estructura core docs licencia y README. Pruebas del framework. test Extensiones de Kumbi- aPHP que extiende el , Librerías externas al extensions core. framework (libchart, fpdf, vendors excel, etc.) Están los Helpers de las vistas. Plantillas de vistas para las helpers views excepciones y otras. Core de KumbiaPHP (dispatcher, router, front- kumbia controller).

×