Curso PHP UNIFACS 2014.1 – Frameworks

531 visualizações

Publicada em

Slides da última aula do curso de PHP UNIFACS 2014.1.

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
531
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
15
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Curso PHP UNIFACS 2014.1 – Frameworks

  1. 1. Curso PHP @JonataWeber 2014 Frameworks
  2. 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. 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?
  4. 4. Como nasce? Impossível criar Framework Interseção grande Possível criar Framework
  5. 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. 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
  7. 7. Framework vs Biblioteca Biblioteca Framework
  8. 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. 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. 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. 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. 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
  13. 13. Tecnologias Embutidas • MVC • ActiveRecord • Internacionalização • ORM • Injeção de Dependência • Validation • Authentication • Routes • Templates • Caching
  14. 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
  15. 15. Frameworks PHP
  16. 16. Full-Stack Frameworks • Aura • CakePHP • TYPO3 Flow [FLOW3] • FuelPHP • Joomla Framework • Kohana • Laravel • ThinkPHP • Lithium • Nette Framework • Phalcon • PPI • Symfony • Yii • Zend Framework
  17. 17. Micro Frameworks • Fat-Free • MicroMVC • Silex • Slim • RespectRest
  18. 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. 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
  20. 20. Referência • http://www.phptherightway.com/#frameworks • https://github.com/codeguy/php-the-right- way/wiki/Frameworks • http://imasters.com.br/noticia/pesquisa-aponta- frameworks-php-mais-promissores-para-2014/

×