boas praticas com cakephp

9
Boas Práticas com CakePHP

Upload: rafaelfqf

Post on 22-Jul-2015

45 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Boas Praticas com CakePHP

Boas Práticas com CakePHP

Page 3: Boas Praticas com CakePHP

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]

Page 4: Boas Praticas com CakePHP

Rafael [email protected]

● Instalação● ORM● Console

● Usando○ generate -f○ status

● Executando○ run all -p○ run up○ run down

Migrations

Page 5: Boas Praticas com CakePHP

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

Page 6: Boas Praticas com CakePHP

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

Page 7: Boas Praticas com CakePHP

Rafael [email protected]

● Instalação● Configurações● Console

● Usando○ $this->AssetCompress->script();○ $this->AssetCompress->css();

● Executando○ build○ clear

AssetCompress

Page 8: Boas Praticas com CakePHP

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

Page 9: Boas Praticas com CakePHP

Boas Práticas com CakePHP

OBRIGADO!