Pessoal quem tem o livro ai na pagina 15 tem a palavra ‘invariável’, não sei se é isso mesmo ou se é um erro de tradução…
se for… alguem poderia me explicar o que seria invariavel? vejam o contexto:
[quote]Esse código cliente é fácil de escrever e, o que é mais importante, fácil de ler.
O padrão Builder simula parâmetros opcionais nomeados como encontrado em
Ada e Python.
Como um construtor, um criador pode impor invariáveis em seus parâmetros.
O método build pode verificar essas invariáveis. É crítico que elas sejam verificadas
após a cópia dos parâmetros do criador para o objeto e que a verificação ocorra nos
campos do objeto em vez de nos campos do criador (Item 39). Se alguma invariável
for violada, o método build deve lançar uma IllegalStateException (Item 60). A
mensagem detalhada da exceção deve indicar que a invariável foi violada (item 63).
Outra maneira de impor invariáveis envolvendo vários parâmetros é fazer com que
métodos setter usem grupos inteiros de parâmetros em que haja alguma invariável. Se
a invariável não for respeitada, o método setter lançará uma IllegalArgumentException.
Isso tem como vantagem ser possível detectar a falha na invariável assim que os
parâmetros inválidos são passados, em vez de aguardar build ser chamado.
[/quote]