CakePHP
Alex Alvarez, Lorena Bes i Marc Mauri
Introducció
● Framework de codi lliure per a PHP (PHP4 i PHP5)
   ○ A la pàgina o Github

● Aplicacions web de forma estructurada i ràpida

● Sota llicència MIT

● Utilitza MVC: mantenibilitat, modularitat i ràpid
   desenvolupament.
Evolució històrica
●   Apareix al 2005 (Conceptes de Ruby On Rails)
●   1.1
●   1.2
●   1.3
●   2.0
●   2.1.1 (25 de març 2012) (Última versió estable )
●   Treballant en
    ○ 2.1.2 -> Correcció de 2.1.1
    ○ 2.2 -> Nous canvis (timezone, opcions de cache,
        llibreria hash...)
Framework MVC
● Segueix el patró MVC adaptat a la web
● Un Router o Dispatcher (patró Front Controller) mapeja
    les URL a operacions dels controladors
●   Els diferents controllers separen la lògica de la vista
    (Aplication Controller)




● Utilitza a més Components, Behaviors i Helpers
Controlador
Rol: Presentation
Controller dins de MVC.
Patrons:
Application Controller
Atributs interessants:
helpers
Mètodes interessants:
Set
Redirect
Acoblaments:
Array, Views, Models
concrets, Session,
CakeRequest,
CakeResponse
Vista




Rol: View dins de MVC.          Patrons:
Característiques:               View Helper
Template based view, com        Navegabilitats:
Velocity però barrejant php i   Models Concrets
HTML.
Scaffold
Genera, en temps d'execució i utilitzant reflexió un prototip
complet de l'aplicació a partir de l'esquema de la base de
dades.
Assumeix que volem fer CRUD de totes les entitats i crea
les Vistes, els Models i els Controladors necessaris perquè
això sigui possible.
Model
        Rol: Presentation Model
        dins de MVC.
        Patrons:
        Table Module
        Atributs interessants:
        Validate
        Mètodes interessants:
        Callbacks
        Acoblaments:
        Array (s'utilitza com a
        Record Set)
        Behaviors
Bake
Genera del codi d'un prototip complet de la
aplicació mitjançant un assistent per consola
que analitza l'esquema de la base de dades i
pregunta per les regles de validació i pels View
Helpers que es vol que s'utilitzin.




                CakePHP is not a lie.
Referències utilitzades
http://cakephp.org/

http://book.cakephp.org/2.0/en/index.html

http://bakery.cakephp.org/

https://github.com/cakephp/cakephp


Patterns of Enterprise Application Architecture

CakePHP

  • 1.
  • 2.
    Introducció ● Framework decodi lliure per a PHP (PHP4 i PHP5) ○ A la pàgina o Github ● Aplicacions web de forma estructurada i ràpida ● Sota llicència MIT ● Utilitza MVC: mantenibilitat, modularitat i ràpid desenvolupament.
  • 3.
    Evolució històrica ● Apareix al 2005 (Conceptes de Ruby On Rails) ● 1.1 ● 1.2 ● 1.3 ● 2.0 ● 2.1.1 (25 de març 2012) (Última versió estable ) ● Treballant en ○ 2.1.2 -> Correcció de 2.1.1 ○ 2.2 -> Nous canvis (timezone, opcions de cache, llibreria hash...)
  • 4.
    Framework MVC ● Segueixel patró MVC adaptat a la web ● Un Router o Dispatcher (patró Front Controller) mapeja les URL a operacions dels controladors ● Els diferents controllers separen la lògica de la vista (Aplication Controller) ● Utilitza a més Components, Behaviors i Helpers
  • 5.
    Controlador Rol: Presentation Controller dinsde MVC. Patrons: Application Controller Atributs interessants: helpers Mètodes interessants: Set Redirect Acoblaments: Array, Views, Models concrets, Session, CakeRequest, CakeResponse
  • 6.
    Vista Rol: View dinsde MVC. Patrons: Característiques: View Helper Template based view, com Navegabilitats: Velocity però barrejant php i Models Concrets HTML.
  • 7.
    Scaffold Genera, en tempsd'execució i utilitzant reflexió un prototip complet de l'aplicació a partir de l'esquema de la base de dades. Assumeix que volem fer CRUD de totes les entitats i crea les Vistes, els Models i els Controladors necessaris perquè això sigui possible.
  • 8.
    Model Rol: Presentation Model dins de MVC. Patrons: Table Module Atributs interessants: Validate Mètodes interessants: Callbacks Acoblaments: Array (s'utilitza com a Record Set) Behaviors
  • 9.
    Bake Genera del codid'un prototip complet de la aplicació mitjançant un assistent per consola que analitza l'esquema de la base de dades i pregunta per les regles de validació i pels View Helpers que es vol que s'utilitzin. CakePHP is not a lie.
  • 10.