a jornada de um desenvolvedor de princípios solid em um mundo de micro-services
DESCRIPTION
Em um sistema desenvolvido através do paradigma orientado a objetos, existem diversos padrões e metodologias que devem ser adotadas para que o software produzido seja de fácil manutenção e possibilite sua extensão. E COMO PODEMOS FAZER QUANDO MINHAS CLASSES VIRAM MICRO-SERVIÇOS? Palestra TDC 2014 - Trilha Arquitetura e SOATRANSCRIPT
A JORNADA DE UM DESENVOLVEDOR DE PRINCÍPIOS SOLID
@helmedeiros
- em um mundo de micro-serviços -
projeto ágil
maus cheiros
princípios
Se tiver sorte, você começa um projeto com uma ideia clara de como deseja que o sistema seja. Se tiver mais sorte ainda, a primeira versão reflete a imagem do projeto.
MONOLÍTICO?
MONOLÍTICO
CACHE
BANCO DE DADOS
class
class
class
class
classclass
class
class
GOD
MICRO-SERVIÇOS?
MONOLÍTICO
CACHE
BANCO DE DADOS micro-serviços
micro-serviços
micro-serviços
nossos problemas não desapareceram quando mudamos de paradigma, que tal pensarmos em como identificá-los e corrigirmos? Robert Martin
projeto ágil
maus cheiros
princípios
RIGIDEZ: É difícil de alterar o projeto.1
FRAGILIDADE: O projeto (design) é fácil de estragar.2
IMOBILIDADE: É difícil reutilizar o projeto.3
VISCOSIDADE: É difícil fazer a coisa certa.4
COMPLEXIDADE DESNECESSÁRIA: Projeto excessivo.5
REPETIÇÃO DESNECESSÁRIA: Abuso do mouse.6
OPACIDADE: Expressão desorganizada.7
projeto ágil
maus cheiros
princípios
SRP: Single Responsibility PrincipleS
OCP: Open close principleO
LSP: Liskov Substitution PrincipleL
ISP: Interface Segregation PrincipleI
DIP: Dependency Inversion PrincipleD
A JORNADA DE UM DESENVOLVEDOR DE PRINCÍPIOS SOLID
@helmedeiros
- em um mundo de micro-serviços -