Plugins

Preview:

DESCRIPTION

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

Citation preview

Simplificando comPlugins CakePHP

Desvendando e implementando

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: ftgoncalves@gmail.com

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

CakePHP / Rails / DJango

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

CakePHP / Zend Framework / CodeIgniter

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque CakePHP ?

PHP / Ruby / Python / Java

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

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.

Planejamento

Desenvolvimento

Uso

alto

médio

fácilReuso

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Porque devo usá-lo ?

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

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.

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

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

● Pasta● MVC● Funcionalidades● Banco

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

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

● Pasta● MVC● Funcionalidades● Banco

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

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

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

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Estrutura das classes pais

ReportAppController

AppController

ReportAppModel

AppModel

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

Debug_kit

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

PMail

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Onde publicar ?

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

https://www.ohloh.net/

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

Conclusão

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

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

Referências

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

Simplificando com plugins CakePHPSimplificando com plugins CakePHP

Recommended