Criando Entidades "Like a Boss"

130 visualizações

Publicada em

Dicas de como criar entidades consistentes e de fácil manutenção e entendimento.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
130
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Criando Entidades "Like a Boss"

  1. 1. Criando entidades “like a boss” Everton EmilioTavares
  2. 2. Quem sou? Programador por paixão desde 2002, onde começou com PHP5. Desde 2007 trabalha com Java no desenvolvimento de soluções empresariais, principalmenteWeb. Acredita no desenvolvimento de software como uma forma de artesanato, e que o conhecimento e a disciplina é fundamental para a criação de um software de qualidade.
  3. 3. Sumula de Futebol
  4. 4. Talk is cheap. Show me the code! https://github.com/ezidio/ticnova- sumula
  5. 5. Like a Boss??
  6. 6. Consistência Característica de um corpo do ponto de vista da homogeneidade, coerência, firmeza, compacidade, resistência, densidade etc. dos seus elementos constituintes.
  7. 7. A entidade deve garantir seu estado! Campos obrigatórios; Bloquear modificações externas;
  8. 8. Bibliotecas  // java.util (7+) variavel = Objects.requireNonNull(objeto);  // Google Guava Preconditions.checkState(this.status.equals(PedidoStatus.ABERTO)); Preconditions.checkArgument(valorMinimo <= valorMaximo); variavel = Preconditions.checkNotNull(objeto);  // Commons-lang 3.4 variavel =Validate.notNull(objeto); variavel =Validate.notEmpty(objeto); variavel =Validate.notBlank(objeto); Validate.validState(this.status.equals(PedidoStatus.ABERTO)); Validate.isTrue(valorMinimo <= valorMaximo);  //Java assert – Não use! assert valorMinimo <= valorMaximo; https://www.securecoding.cert.org/confluence/display/java/MET01- J.+Never+use+assertions+to+validate+method+arguments
  9. 9. InnerBuilder
  10. 10. Fugindo do modelo anêmico
  11. 11. Entidades e agregados
  12. 12. Regras...  7 - Mínimo de jogadores;  11 - Máximo de jogadores;  12 - Máximo de reservas;  5 - Máximo de jogadores estrangeiros;  3 - Máximo de substituições no brasileirão;  Não pode dar gol a jogador que não está em campo;
  13. 13. Escolhendo corretamente seus Identificadores
  14. 14. UserStory  Dada uma escalação com 6 ou menos jogadores titulares Quando adiciona-la na sumula Então uma exceção deve ser lançada;  Dada uma escalação de 7 a 11 jogadores titulares Quando adiciona-la na sumula Então a escalação deve ser aceita;  Dada uma escalação com 12 ou mais jogadores titulares Quando adiciona-la na sumula Então uma exceção deve ser lançada.
  15. 15. Perguntas?
  16. 16. Obrigado!  everton.tavares.dev@gmail.com  everton.tavares@db1.com.br  Twitter: @ezidiu

×