# bad
# good
Não pode ser resumido apenas em pacotes, modificadores de acesso e simples getters e setters
Objetos são basicamente uma combinação de estado e comportamento. Logo, devemos dar atenção a como um objeto é usado do quesito concorrência e consistência.
Uma maneira de garantir a consistência, seja em ambientes concorrentes ou não, é definindo o objeto como imutável.
Ou seja, fazer com que o estado de um objeto seja unicamente definido na sua criação, não podendo ser alterado até o fim do seu ciclo de vida (lifecycle).
Como consequência, o comportamento desse objeto será sempre consistente.
twitter: @rlino12