tanto no decorrer do primeiro capítulo quanto no tópico “Exercícios Rápidos”, bem no início de “Identificadores”, está escrito o seguinte: “Os métodos JavaBeans devem ser nomeados usando-se camelCase e, dependendo do propósito do método, devem começar com set, get, is, add ou remove.”
A questão 5 deste mesmo capítulo (1), diz o seguinte:
Quais nomes de métodos obedecem ao padrão JavaBeans?
A. addSize
B. getCust
C. deleteRep
D. isColorado
E. putDimensions
Somente B e D estão corretas. Segundo explicações no livro, a alternativa “A” também não está correta?
Mesmo? E o que você diz do método add da classe List? E o addElement da classe Vector?
Me parece que a razão é por que o método add remete ao fato de adicionar um “size”, quando correto seria você querer obter o valor de size e, portanto, o método deveria chamar getSize().
É um erro meio subjetivo. Se você tem uma classe que é um list de sizes, poderia SIM chamar o seu método de addSize.
Então, para acabar com a dúvida peguei a norma dos Java Beans.
O colega ali estava certo. No padrão Java Beans, add e remove são somente usados para listeners. Neste caso, o correto seria dizer que addSize não é um método bean, pois deveria ser addSizeListener.
Eu confundi pois o método set() aceita propriedades indexadas, set(int index, Object valor) e nas classes que eu descrevi estas propriedades também estão presentes no método add. Mas embora sejam coisas da Collections Framework, não são coisas do padrão Java Bean.
Os métodos de padrões JavaBeans, como get, set, is começam com a primeira letra minuscula, certo!!!
Depois do get, set ou is por exemplo, a segunda palavra deve conter letras maisculas ou aceita qualquer caixa alta ou baixa.
Fiquei com dúvidas em uma questão… alguém sabe???
Embora não seja um consenso nem entre a própria Sun, o livro Effective Java recomenda que no caso de siglas, apenas a primeira letra também seja maiúscula.
Por exemplo:
isHttpRequested()
getArrivedMessage()
setArrivedMessage(String message)
nada impede de vc por minusculo ou maiusculo em:
setidade, setIdade.
mais a pergunta eh sobre nomeação, e de acordo o que a nomeação diz eh invalido a forma escrita, mais nao quer dizer que o codigo nao compila… esse pergunta foi para testar se o cara ta atento em saber as regras de nomeação. O importante nao confudir que seja obrigatorio vc declara como quiser…
a nomeação é um padrao de desenvolvimento, que pode ser adotado ou não, o ideal que seja ne? caso o seu amigo programador morra, ou seja demitido ja pensou se ele nao segue a documentação como você ou outro programador que vai ficar com a tarefa dele, vai conseguir entender a sintaxe dele se no desenvolvimento ele usou uma forma que para ele seria a melhor, entao muitos gerente de projeto e empresas em si, a nomeação é adotada e o uso é obrigatorio, e alem a legibilidade do codigo heeh quando começei a estudar bem no inicio nao usava nomeação depois começei a usar e percebi a rapidez que é de vc olhar uma class de um amigo e saber que isso eh metodo, isso eh um construtor, isso eh uma variavel de instancia… isso returna um tipo boolean… e por ai vai