Symfony - PHP pra gente grande

Preview:

DESCRIPTION

Palestra sobre Symfony apresentada no Dev In Rio 2010.

Citation preview

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? :)

contato@lsouza.pro.br #php-rio, #symfony-pt, @hisamu

Recommended