Entendendo os microframeworks em PHP

379 visualizações

Publicada em

Breve discussão do 2o meetup do PHPBA sobre a motivação para o surgimento dos micro e nano frameworks. Para que eles servem, como e quando utilizá-los e um estudo de caso sobre o uso do Slim para integrar com outros sistemas.

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
379
No SlideShare
0
A partir de incorporações
0
Número de incorporações
263
Ações
Compartilhamentos
0
Downloads
3
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Entendendo os microframeworks em PHP

  1. 1. Entendendo os Microframeworks por Felipe Bastos felipebastosweb@gmail.com
  2. 2. Autor •Felipe A. Bastos Moraes aka <felipebastosweb> •Graduado em Análise de Sistemas •MBA em Gerenciamento de Projetos •Entusiasta de Desenvolvimento de Software e Metodologias Ágeis –Gosta de filmes/seriados que envolvam tecnologia ou investigação científica: Homem de Ferro, House, Bones e DC’s Legends of Tomorrow ;)
  3. 3. Agenda <prevista> •Convite para participação de todos <Retrospectiva> •Desvendar Por Que surgiram os micro frameworks •Entender o Que realmente são eles •Descobrir Onde podem ser usados •Sugerir Quem deve usar •E Quando usar •Arquitetar Como usar •E analisar o impacto •do Custo
  4. 4. Por que eles surgiram?
  5. 5. •PHP é Coisa de Iniciante –Falta de Orientação a Objetos <nos Open Sources> –Falta de Design Patterns •Aqui não usamos Frameworks –Código Spaguetti –O gargalo do desempenho (Zend e Symfony 1 e 2) –A complexidade da ferramenta –Alto custo de Manutenção –O alto custo da Formação Profissional –Falta de Profissional especializado Você já ouviu ou pensou isso ...
  6. 6. Você já ouviu ou pensou isso ... •O “legado do Legado” –Diferentes versões da linguagem –Diferentes versões do framework –Diferentes versões do sistema •Qual o melhor Framework? –O que tem mais recursos –O que tem a comunidade mais ativa –O que tem melhor desempenho –O mais ágil
  7. 7. •Odisseia da Manutenção –Não sei por onde começar –Qual parte do sistema está derrubando o banco? –Qual parte do sistema está derrubando o servidor? –Vamos parar tudo –Já fizeram backup? •Como vamos escalar? –Escala o Banco –Escala a Aplicação –Escala o Servidor –Balanceia a Carga Você já ouviu ou pensou isso ...
  8. 8. Dividir e Conquistar
  9. 9. Micro Frameworks e os MicroServiços É uma forma particular de conceber APLICAÇÕES de Software como suítes de SERVIÇOS implementadas de formas INDEPENDENTES. Martin Fowler e James Lewis
  10. 10. Quão pequeno pode ser um Framework?
  11. 11. Sim, uma Classe
  12. 12. Um exemplo de Uso
  13. 13. Todos os Componentes são Versionados e Testados
  14. 14. - Senhor, estou buscando informações.
  15. 15. Seus Serviços terão Propósitos Específicos •Você não precisa replicar toda a Aplicação; •A sua aplicação desempenhará uma tarefa específica; •A sua aplicação faz melhor aquilo para o qual ela foi projetada; •É muito mais fácil projetar e dar manutenção em serviços menores.
  16. 16. Vamos Escalar?
  17. 17. Na visão de Fowler e Lewis
  18. 18. Sua Equipe também será Evolutiva
  19. 19. … E Flexível
  20. 20. Qual Escolher? •Slim •Ou um Menor •Silex •Mais Complexo •Mais ...
  21. 21. O SLIM É o mais básico Sua modularização é fornecida por terceiros REST básico Views O SILEX Fornece toda estrutura de ServiceProviders Tem diversos Providers Suporta MVC
  22. 22. Eu fui de Slim
  23. 23. Eu fui de Slim
  24. 24. Eu fui de Slim
  25. 25. Eu fui de Slim
  26. 26. Quanto custa? Seus projetos tendem a custar menos à longo prazo Seus recursos serão melhor dimensionados Você fará entregas diárias ao invés de trimestrais ou semanais Você entregará mais valor de negócio ao seu cliente (satisfação garantida → maior renda) Você fará menos manutenção (menor custo) Seu projeto evoluirá mais rápido (ciclo de vida do produto maior → maior lucro)
  27. 27. (Será que dá?) •Para fazer um Framework Monolítico <ex. Laravel> •Para fazer um Sistema completo Onde mais você usaria um MicroFramework?
  28. 28. Obrigado!!

×