O documento discute o que são frameworks, seus tipos, vantagens e desvantagens. Explica que frameworks são conjuntos de classes que colaboram para realizar tarefas comuns, como ORM, autenticação e templates. Também lista alguns dos principais frameworks PHP como Laravel, Symfony e Zend Framework.
2. –Fayad e Schmidt
“É um conjunto de classes que colaboram para
realizar uma responsabilidade para um domínio
de um subsistema da aplicação.”
O que é um Framework?
3. “Um framework, em desenvolvimento de
software, é uma abstração que une códigos
comuns entre vários projetos de software
fornecendo uma funcionalidade genérica.”
O que é um Framework?
5. Tipos de Frameworks
• Frameworks Verticais
• Confeccionados através da experiência obtida em um
determinado contexto específico;
• Ex: Financeiro; Recursos Humanos
• Frameworks Horizontais
• Não dependem do domínio da aplicação e podem ser
usados em diferentes domínios
• Ex: Interfaces gráficas; Persistência; Transação
6. Tipos de Frameworks
• Micro Frameworks
• Route HTTP Request para um callback, controller, método, etc.
• HTTP Services
• Full-Stack Frameworks
• ORM, Authentication packages, etc
• Component Frameworks
• Coleções de bibliotecas de propósito única e especializado
• Em conjunto podem formar um micro- ou full-stack framework
8. Vantagens
a curto prazo
• Não reinventar a roda!
• Evitar desperdícios (redução de custos)
• Redução de time-to-market
• Segurança
• Extensibilidade
• Comunidade
9. • Produtividade
• Padronização
• classes, bibliotecas, convenções
• Eliminação das tarefas repetitivas
• Facilidade na geração de testes
• Geração de documentação
Vantagens
a longo prazo
10. • Programadores concentram-se em adicionar valor
• Menos manutenção
• OO maximiza o re-uso
• Já foi testado!
• Uso de tecnologias embutidas
Vantagens
a longo prazo
11. Desvantagens
• Dificuldade de aprendizagem
• Construir um framework é complexo
• Necessidade de planejamento
• Quem pode pensar em longo prazo quando se está
competindo "On Internet time”?
12. Características básicas
• Deve ser reusável
• Bem documentado
• Fácil de usar
• Deve ser extensível
• Deve ser completo e eficiente dentro do seu
propósito
14. Documentação
• Descrição histórica
• Exemplos práticos
• Detalhes da sua criação e implementação
• Descrição do comportamento
• Fóruns de discussões
18. 6 motivos para não usar um
framework PHP
• 1. Você é imortal, e portanto vai estar sempre por perto para ajudar outros
desenvolvedores a entenderem e estenderem seu código.
• 2. Você não tem vida então não vai se importar em investir todo o seu tempo
livre escrevendo comentários de código e documentações que já devem estar
escritas em um bom framework, para que outros desenvolvedores depois de
você (e você mesmo) possam escrever aplicativos com seu código.
• 3. Você está criando um aplicativo que vai estar entre os mais visitados da
internet (todos os acessos vindos de você mesmo e para toda a eternidade se o
#1 e #2 forem verdadeiros), assim pode justificar os potenciais nanosegundos
salvos por não ter a “sobrecarga” de um framework.
• 4. Você é um deus da segurança web e é muito mais inteligente que um grupo
de desenvolvedores que escreve código e testa coletivamente bons frameworks
em busca de falhas de segurança.
19. 6 motivos para não usar um
framework PHP
• 5. Você quer gastar todo o seu tempo reinventando a roda escrevendo
sua própria implementação de roteamento RESTful, ORM, engine de
templates, etc, etc, ao invés de usar o que bons frameworks proveem.
Ou talvez você pule a parte do ORM e apenas reescreva grandes
partes do aplicativo sempre que precisar mudar de banco de dados.
• 6.Você não tem prazos e “deadlines”.
• Se estes motivos não se aplicam a você eu recomendo que dê uma
olhada em algum framework como Zend Framework 2, Symfony 2,
Laravel
• - See more at: http://eltonminetto.net/blog/2013/04/21/6-motivos-para-
nao-usar-um-framework-php/#sthash.M7IAPjbp.dpuf