SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
Arquitetura de Software - Performance, Layers e Domain Layer
14.
Divisão Conceitual
Você pode criar um
serviço Ftp sem
compreender Tcp
15.
Isolamento
Você pode alterar um
camada sem afetar as
outras
16.
Substituição
Substituir 1 camada sem modificar outras
17.
Layer != Tier
Tier
Divisão Física
(Client/Server)
Layer
Divisão Lógica
(que também poderia ser física)
18.
Camadas
Apresentação Domínio Database
Interação Regras de Comunicação
do Software Negócio, com outros
com o Usuário Cálculos e sistemas e
ou Serviço Validações Persistência
Cliente
19.
As camadas de domínio
e dados não devem ser
dependentes da
apresentação.
Fowler
20.
O que aconteceria se você
tivesse que substituir seu
banco de dados por um
arquivo XML?
21.
E se tivesse que criar
um cliente para
iPhone ao invés de
HTML?
25.
Um procedimento que recebe
dados da camada de apresentação,
processa com validações e
cálculos, armazena no banco de
dados, e invoca operações de
outros sistemas, então replica
mais dados para a apresentação
26.
Um procedimento único
para cada ação
do Usuário
Pode ser separado
em sub-rotinas e
que podem ser
compartilhadas por
diferentes scripts.
44.
Divisão
Uma abordagem comum que divide a
camada de domínio em duas.
45.
API
A camada de
apresentação interage
com o domínio apenas
através do Service
Layer que atua como
uma API da
aplicação
46.
Service
Excelente para inserir
Segurança e Controle de
Transações.
Recomendável que
aja como um Façade
sem comportamento
próprio.
47.
Regras de Negócio
Domain Model Controller-Entity
Apenas Style Transaction
Segurança e Comportament Script
Transações no o comum em
Service Layer, objetos, Anemic
Comportament específico em Domain
o todo no transaction Model
Domain Model scripts.
Domain Service
48.
“Minha preferência é por
ter a Service Layer mais
magra que for possível”
Martin Fowler