Boas Praticas com CakePHP
Embed Size (px)
Transcript of Boas Praticas com CakePHP

Boas Práticas com CakePHP

Apresentação
http://www.zend.com/en/yellow-pages/ZEND024124
http://br.linkedin.com/in/rafaelfqf
Rafael [email protected]

Introdução
● Compartilhando múltiplas aplicações● Convenções sobre configurações● Comentários no código● Lógica de negócios nos Modelos● Don’t Repeat Yourself● Fat Models, controllers and views skinny
Rafael [email protected]

Rafael [email protected]
● Instalação● ORM● Console
● Usando○ generate -f○ status
● Executando○ run all -p○ run up○ run down
Migrations

Rafael [email protected]
Requests and responses
● CakeRequest é o objeto padrão para requisições
● RequestHandlerComponent é como uma cereja em cima do bolo
● Requests○ GET○ PUT○ POST○ DELETE
● Responses○ JSON○ View○ XML

Models
● Callbacks○ beforeFind○ afterFind○ beforeValidate○ beforeSave○ afterSave○ beforeDelete○ afterDelete○ onError
Rafael [email protected]
● Additional methods○ Custom find types○ Custom your method
● Associations○ counterCache
● Behaviors○ Containable
● Properties○ recursive

Rafael [email protected]
● Instalação● Configurações● Console
● Usando○ $this->AssetCompress->script();○ $this->AssetCompress->css();
● Executando○ build○ clear
AssetCompress

CakePHP Events
● Subject● Observer
Rafael [email protected]
Observer Pattern ● Criando um Evento○ $event = new CakeEvent(‘name’, $subject, $data);○ Nome deve ser único e consistente:
■ App.Model.User.afterLogin■ Cms.Controller.Pages.beforeFilter■ {App/PluginName}.Type.Class.EventName
● Dispatching○ $this->getEventManager()->dispatch($event);
● Listeneres○ Implement CakeEventListener Interface○ Convenção: Colocá-los em Lib/Event
Dicas● Events.php config● Documentação

Boas Práticas com CakePHP
OBRIGADO!