DDD e Restful SOA by Daniel Moreira Yo... 736 views
Java+DDD+BDD+TDD=Sucesso Total by Eduardo Bregaida 786 views
Domain Driven Design (DDD) by Mauro Leal 669 views
DDD Dirty Harry style by Alberto Brandolini 2675 views
Tutorial ASP.NET MVC 5 DDD + EF + A... by Eduardo Pires 112395 views
Nós desenvolvedores muitas vezes temos ideias de negócios milionários e de grande impacto, mas normalmente temos dificuldade em definir qual tecnologia utilizar para tirar essas ideias do papel. Um conceito muito utilizado no meio de startups é o MVP, ou Minimo Produto Viável. Basicamente, você cria o menor produto possível da sua grande ideia, ou seja, um protótipo. Assim, você consegue identificar e corrigir os problemas rapidamente ou descartar o modelo caso necessário. Nesta palestra, apresento formas de utilizar o UpStream de tecnologias como Micro Services, DDD, TDD e REST para construir APIs escaláveis de MVP. Se você tomar a decisão certa no início, dificilmente precisará trocar seu framework ou tecnologia utilizada pra atender à evolução.
1. ALÉM DO THEDEVELOPER'SCONFERENCE-TRILHAPHP ROMEUSOUZAMATTOS COM PHP MVP DEVELOPER
2. QUEM SOU? @romeumattos 24 anos São José-SC Estudante de Computação Backend Developer @Exibe.me Desenvolvedor web há 5 anos Início complicado com ASP :( 4 anos com PHP o/
5. MVP "Produto mínimo viável (MVP, do original Minimum Viable Product) é a versão mais simples de um produto que pode ser lançada com uma quantidade mínima de esforço e tempo de desenvolvimento" Eric Ries - The LEAN STARTUP
6. MVP Pouco tempo R$ 0,00 no bolso Somente 1 desenvolvedor
8. CAMINHO NATURAL Ecolher o framework que lhe atende de maneira mais rápida. Geralmente o framework que se tem mais experiência
9. VAMOS AO QUE INTERESSA...
10. VAMOS AO QUE INTERESSA...
11. FRAMEWORKS FULL STACK Já vem cheio de ferramentas Maior curva de aprendizado Pode ser mais pesado Remover o Desnecessário? Bastante funcionalidades Impõe uma estrutura/organização Componentes básicos Monolítico
12. CARRINHO ARTESANAL
13. MICRO FRAMEWORKS Funcionalidades básicas Menor curva de aprendizado Mais leve ;) (na forma original) Flexível Descritivo Modular Toolkits e Libraries
14. QUAL ESCOLHER?
15. DEPENDE... Objetivo Requisitos Prazo Suas habilidades e de seus colegas Vida útil do projeto
16. QUAL O MÍNIMO QUE VOCÊ PRECISA?
17. "Todas as mágicas tem um preço" Helio Cabral - TDC 2015
18. THE MICRO PHP MANIFESTO Eu sou um desenvolvedor PHP Eu gosto de construir coisas pequenas Eu quero menos código, não mais. Eu gosto de construir coisas pequenas com fins simples Eu gosto de construir coisas pequenas que trabalham em conjunto para resolver problemas maiores Eu quero escrever menos código, não mais Eu quero gerenciar menos código, não mais
19. API REST Escalabilidade Fácil consumo Clientes em paralelo Parcerias
20. PROVIDERS Routing Requests Responses Views (Twig) Sessions Logging Error Handling Dependency Injection Hooks Middleware HTTP Caching
21. DDD - DOMAIN DRIVEN DESIGN Não acoplar código da aplicação no framework Atualizar ou trocar o framework de forma mais tranquila Não focar na tecnologia em si, mas sim nas regras de negócios e como isso vai estar representado no código.
22. TDD - TEST DRIVEN DEVELOPMENT TDD é uma cultura. Qualidade Segurança Ganha horas, dias e semanas. Não escolha um framework sem testes automatizados
23. DICAS Doctrine Composer PHP-Fig Packagist
24. DICAS Thiago Paes @mrprompt Silex-Api-Skel @eminetto @coderockr Silex-Skel Apigility apigility.org
25. PHP Aos poucos você pode criar um super software
26. "Se você tomar a decisão certa no início, dificilmente precisará trocar seu framework ou tecnologia utilizada pra atender à evolução."
27. Para atender a evolução você pode e deve mudar as tecnologias, mas isso não pode ser algo doloroso
28. REFERENCIAS Thiago Rodrigues @PHPSP Impacto dos Frameworks PHP The Micro PHP Manifesto microphp.org Matthew Setter why a microframework lead to lean applications