Entendendo os microframeworks em PHP
-
Upload
felipe-bastos -
Category
Technology
-
view
353 -
download
0
Transcript of Entendendo os microframeworks em PHP
![Page 2: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/2.jpg)
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 ;)
![Page 3: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/3.jpg)
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
![Page 4: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/4.jpg)
Por que eles surgiram?
![Page 5: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/5.jpg)
• 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 ...
![Page 6: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/6.jpg)
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
![Page 7: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/7.jpg)
• 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 ...
![Page 8: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/8.jpg)
Dividir e Conquistar
![Page 9: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/9.jpg)
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
![Page 10: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/10.jpg)
Quão pequeno
pode ser um
Framework?
![Page 11: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/11.jpg)
Sim, uma Classe
![Page 12: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/12.jpg)
Um exemplo de Uso
![Page 13: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/13.jpg)
Todos os Componentes são Versionados e Testados
![Page 14: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/14.jpg)
- Senhor, estou buscando informações.
![Page 15: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/15.jpg)
Seus Serviços terãoPropó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.
![Page 16: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/16.jpg)
Vamos Escalar?
![Page 17: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/17.jpg)
Na visão de Fowler e Lewis
![Page 18: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/18.jpg)
Sua Equipe também seráEvolutiva
![Page 19: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/19.jpg)
… E Flexível
![Page 20: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/20.jpg)
Qual Escolher?
• Slim• Ou um Menor
• Silex• Mais Complexo• Mais ...
![Page 21: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/21.jpg)
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
![Page 22: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/22.jpg)
Eu fui de Slim
![Page 23: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/23.jpg)
Eu fui de Slim
![Page 24: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/24.jpg)
Eu fui de Slim
![Page 25: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/25.jpg)
Eu fui de Slim
![Page 26: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/26.jpg)
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)
![Page 27: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/27.jpg)
(Será que dá?)
• Para fazer um Framework Monolítico <ex. Laravel>
• Para fazer um Sistema completo
Onde mais você usariaum MicroFramework?
![Page 28: Entendendo os microframeworks em PHP](https://reader036.fdocumentos.tips/reader036/viewer/2022062523/58f345451a28ab6f5d8b457b/html5/thumbnails/28.jpg)
Obrigado!!