Download - Symfony - PHP pra gente grande
Symfony PHP OOP para gente grande
Luã de Souza
‣ Sócio e desenvolvedor do grupo Tapronto
‣ 6 anos de PHP
‣ www.lsouza.pro.br
‣ www.tapronto.com.br
‣ @hisamu
Symfony
‣ Mantido pela Sensio Labs (frança)
‣ 5 anos de projeto
‣ Versão atual: 1.4
‣ PHP 5.2.5+
‣ www.symfony-project.org
‣ MVC
‣ Desenvolvimento ágil
‣ Código bem feito
‣ DRY - Não reinvente a roda
Quem usa?
‣ Dailymotion
‣ Yahoo! Answers
‣ Yahoo! Bookmaks
‣ Delicious
‣ MVC sólido e bem feito
‣ CLI - Linha de comando
‣ Routing
‣ Form API
‣ Debug
‣ Admin generator
‣ Scaffolding
‣ Plugins
‣ I18N
‣ Cache
‣ Testes
‣ Comunidade
Features
Estrutura de Diretórios
Diretórios
YML
O modelo MVC
MVC
O Controller
Módulos
Actions
O Model
Doctrine
‣ ORM
‣ DQL - Doctrine Query Language
‣ Abstração de banco
‣ schema.yml
schema.yml
ORM
ORM
ORM + DQL
A View
Elementos da View
‣ Layout
‣ Templates
‣ Partials
‣ Components
‣ Slots
Layout
+ =
Templates
Partials e Components
‣ Reutilização de código
‣ Decomposição do template
‣ Components: partial com lógica
CLI - Linha de Comando
CLI
‣ Comandos executados via terminal
‣ Automação de tarefas
‣ Várias tasks úteis
‣ Personalização de tasks
$ symfony generate:project meuProjeto
$ symfony doctrine:build-model
$ symfony cache:clear
$ symfony plugin:install sfThumbnail
$ symfony test:all
Routing
Rotas
Form API
Form API
‣ Widgets
‣ Validators
‣ Reutilização de código
‣ Organização
‣ Cada Model possui seu form
Forms em uso
Debug
Debug Toolbar
‣ Variáveis e configurações
‣ Logs de execução
‣ Logs de consultas ao banco
‣ Tempo de requisições
Debug - Variáveis
Debug - View
Debug - Timers
Debug - Querys
Admin Generator
Admin Generator
‣ Rapidez no desenvolvimento de backends
‣ Interface pré-pronta
‣ Simples
‣ Apenas um arquivo de configuração
Admin Generator
‣ $ symfony doctrine:generate-admin frontend Autor
‣ generator.yml
generator.yml
Admin - index
Admin - Novo
Admin - Edição
Scaffolding
Plugins
Plugins
‣ sfDoctrineGuard
‣ sfThumbnail
‣ sfFormExtra
‣ sfFeed2
‣ 1100+ plugins
Testes
Comunidade
Comunidade
‣ Documentação do framework
‣ #symfony @ irc.freenode.net
‣ Google groups: #symfony-pt
‣ www.symfonians.net
Perguntas? :)
[email protected] #php-rio, #symfony-pt, @hisamu