Post on 25-Jun-2015
description
1
Giovanni Bassi
giggio@giggio.net
www.lambda3.com.br
blog.lambda3.com.br
5
@GiovanniBassi
Status atual
Separando a
consulta
Cenário
colaborativo
Separando um
pouco mais
Oportunidades
Mudanças na
modelagem
Q&A
Interface gráfica
Infra
Serviços
Controller
View
Representantes
ORM
Representantes
Representantes
Repositório ordena??
Representante Total de
vendas
Número de
clientes
% sobre a
meta
Gerente
Darth Vader 50.000 15 105% Imperador
Han Solo 23.000 10 90% Luke Skywalker
Representantes
Consulta
Alteração
Consulta de
Representantes
SQL
Represen
tantes
Consulta de
Representantes
ORM
Represen
tantes
Sistema
Interface gráfica
Infra
Serviços
Controller
View Cache
Palestra de Cache Distribuído com o
Daibert em seguida!
http://en.wikipedia.org/wiki/ACID
http://en.wikipedia.org/wiki/Eventual_consistency
http://bit.ly/captheorem
Consulta de
Representantes
SQL (em
banco
específico)
Represen
tantes
Representantes
Banco de
Consulta
Banco de
Transações
Consulta de
Representantes
Representantes
Banco de
Consulta
Banco de
Transações
Consulta de
Representantes Consulta
Comando
Representantes
Banco de
Consulta
Banco de
Transações
Consulta de
Representantes
Representantes
Consulta de
Representantes
Banco de
Transações
Banco de
Consulta
Representantes
Consulta de
Representantes
Banco de
Transações
Banco de
Consulta
Representantes
Consulta de
Representantes
Banco de
Transações
Banco de
Consulta
Cliente
Nome
EhEspecial
FaixaDeDesconto
EhValido()
Cliente
AtualizarDados(nome, email)
DarDesconto(percentual)
TornarEspecial()
Cliente
AtualizarDados(nome, email)
DarDesconto(percentual)
TornarEspecial()
AtualizaDadosCliente
IdCliente
Nome
DarFaixaDeDescontoAoCliente
IdCliente
Percentual
TornarClienteEspecial
IdCliente
Cliente
AtualizarDados(nome, email)
DarDesconto(percentual)
TornarEspecial()
ClientesEspeciais
IdCliente
Nome
Clientes
IdCliente
PercentualDesconto
PaginaAtual
NumeroDePaginas
duplicação de dados: ok denormalização: ok dados na última camada: ok atomicidade: desnecessária consistência: em algum momento (não agora) exceções a regra: menos prioritárias fronteira transacional: menor que uma entidade entidades de domínio na UI: malignas camadas: menos... cache: banco NOSQL sem segurança banco relacional: provavelmente desnecessário em diversos pontos repositórios: não paginam nem ordenam
Rollback!
Obrigado! Giovanni Bassi
giggio@giggio.net
www.lambda3.com.br
blog.lambda3.com.br
Giovanni Bassi giggio@giggio.net
www.lambda3.com.br
blog.lambda3.com.br