22
Simplificando com Plugins CakePHP Desvendando e implementando

Plugins

Embed Size (px)

DESCRIPTION

Apresentação feita no dia 12/06/2009 em São Paulo, SP sobre Plugin com CakePHP.

Citation preview

Page 1: Plugins

Simplificando comPlugins CakePHP

Desvendando e implementando

Page 2: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Quem souFelipe Theodoro Gonçalves, 21 anos, cursando 4ª ano de Engenharia da Computação na USJT.

Em 2007 conclui a iniciação científica no Instituto de Pesquisa Energética Nuclear/USP na linha de pesquisa 'Estiramento mecânico de fios poliméricos irradiados', com orientação do Dr. Carlos Eduardo Manzoli.

Trabalho com as linguagens C, Java, PHP e atualmente estudo Python e sou entusiasta Linux. Já trabalhei na Camargo Correa, Atlas Visual e Inova Digital. Atualmente estou montando junto com amigos a empresa BrainStern.

Site: blog.ftgoncalves.comE-mail: [email protected]

Page 3: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

CakePHP / Rails / DJango

Page 4: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

CakePHP / Zend Framework / CodeIgniter

Page 5: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

PHP / Ruby / Python / Java

Page 6: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque Plugin ?

Palavra Google Yahoocakephp 4.420.000 7.290.000Cakephp plugin 678.000 1.330.000

cakephp442000087%

Cakephp plugin67800013%

cakephpCakephp plugin

cakephp729000085%

Cakephp plugin133000015%

cakephpCakephp plugin

Page 7: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

O que é um plugin ?

Plugin é um termo que significa "de encaixe". Pode ser utilizado em aparelhos eletrônicos, máquinas, softwares...

Na informática, o plugin é um programa de computador (geralmente pequeno e leve) que serve para adicionar funções a outros programas maiores, provendo alguma funcionalidade específica.

Os exemplos típicos são os usados para exibição de figuras (por exemplo, o SVG, se um navegador não o suporta), para rodar arquivos multimídia, para criptografar e descriptografar e-mails (por exemplo, o PGP) ou para filtrar imagens em programas gráficos.

Premissas:● Um plugin pertence a uma aplicação.● Um plugin interfere ou não na aplicação pai.

Page 8: Plugins

Planejamento

Desenvolvimento

Uso

alto

médio

fácilReuso

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque devo usá-lo ?

Page 9: Plugins

Planejamento

Geralmente é um aglomerado de requisitos desordenados não lineares.Em metodologias formais são considerados de entendimento alto e consumidores de tempo.

DesenvolvimentoDando méritos ao CakePHP pela agilidade e simplicidade no desenvolvimento e uso de padrões (MVC, ORM, DRY...)

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 10: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Reuso ?!

Plugins são mais que o reuso de códigos. São sistemas que rodam a partir de uma aplicação pai.

É sempre importante lembrar que um plugin não pode ser considerado um add-ons, mas um add-ons pode ser considerado um plugin. A principal idéia que corre por tras é literalmente ter suas regras e adicionar funcionalidades à aplicação pai, permitindo que o programador possa utilizá-lo da melhor forma.

Page 11: Plugins

App

Plugin

Plugin

Plugin

Plugin

Core

App

Plugin Plugin Plugin Plugin

Adicionador de funcionalidade

Tipos de Plugins:

Camada

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 12: Plugins

PadrõesA pasta plugin_name é de fato o nomedo seu plugin. Exemplo: Report.

● Pasta● MVC● Funcionalidades● Banco

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 13: Plugins

PadrõesOs plugins seguem por padrão aestrutura do CakePHP de camadasMVC.

● Pasta● MVC● Funcionalidades● Banco

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 14: Plugins

PadrõesOs plugins estão preparados parainternacionalização e arquivos deconsumo próprio (imagens, js, css...)

● Pasta● MVC● Funcionalidades● Banco

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 15: Plugins

Padrões● Pasta● MVC● Funcionalidades● Banco

O banco de dados será o mesmo que da aplicação pai e terá tabelas com prefixo “nome do plugin_”.

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 16: Plugins

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Estrutura das classes pais

ReportAppController

AppController

ReportAppModel

AppModel

Page 17: Plugins

Alguns exemplos

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

https://www.ohloh.net/p/cakephp-debugkit

http://code.google.com/p/pmailgroup/

https://www.ohloh.net/p/cakephp-authnet

Page 18: Plugins

Debug_kit

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 19: Plugins

PMail

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Page 20: Plugins

Onde publicar ?

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

https://www.ohloh.net/

http://code.google.com/projecthosting/

Page 21: Plugins

Conclusão

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

“Criem plugins, ajudem a aumentar a comunidade e fortalecer o PHP, principalmente o CakePHP”.

Page 22: Plugins

Referências

● Google trends;● Google code;● Google search;● Yahoo search;● Ohloh;● CakePHP docs;● Wikipédia.

Simplificando com plugins CakePHPSimplificando com plugins CakePHP