Criando entidades “like a boss” Everton Emilio Tavares
Quem sou?
Programador por paixão desde 2002, onde começou com PHP5. Desde 2007 trabalha com Java no desenvolvimento de soluções empresariais, principalmente Web. 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.
ConsistênciaCaracterística de um corpo do ponto de vista da homogeneidade, coerência, firmeza, compacidade, resistência, densidade etc. dos seus elementos constituintes.
Bibliotecas
// java.util (7+)variavel = Objects.requireNonNull(objeto);
// Google GuavaPreconditions.checkState(this.status.equals(PedidoStatus.ABERTO));Preconditions.checkArgument(valorMinimo <= valorMaximo);variavel = Preconditions.checkNotNull(objeto);
// Commons-lang 3.4variavel = 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
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;
User Story
Dada uma escalação com 6 ou menos jogadores titularesQuando adiciona-la na sumulaEntão uma exceção deve ser lançada;
Dada uma escalação de 7 a 11 jogadores titularesQuando adiciona-la na sumulaEntão a escalação deve ser aceita;
Dada uma escalação com 12 ou mais jogadores titularesQuando adiciona-la na sumulaEntão uma exceção deve ser lançada.
Obrigado! [email protected] [email protected] Twitter: @ezidiu