Eu leio com frequência em blogs, forums etc etc etc sobre não utilizar a nomenclatura de gets e sets. Até gosto da ideia, compreendi a tese mas …
Como fazer quando você utiliza alguma coisa que precisa que a sua classe tenha os metodos get e set como por exemplo a JSTL (se eu estiver enganado me corrijam por favor) ? Volta-se para o get e set ? ou abandona e utiliza outra alternativa ? Não seria mais facil continuar utilizando os gets e sets já que é compativel com tudo que é framework, ou seja, os que dependem dessa nomenclatura e os que não dependem, vide os que utilizam reflection ?
Ninguem até agora além do daniel respondeu alguma coisa de util. Para que serve o get e set eu sei, basta ler a minha mensagem de abertura do tópico. A questão é como fazer no caso de utilizar algum framework, taglib, linguagem de script que necessite dos getters e setters.
Exemplos bem realistas: JSTL, EL.
Eu utilizo JSTL e a Expression Languagem direto inclusive combinadas (Nossa que Obvio, nem precisava falar )
Eu penso igual a você mas pelo que eu entendi de posts de algumas pessoas … (estou tentando localizar os links), me parece que é tosco utilizar em qualquer situação.
Quanto ao que fazer com frameworks que utilizam esse nomenclatura, acho que na verdade não se tem muito o que fazer…se precisa, precisa e pronto!
Essa idéia que o Daniel levantou, que alguns puristas acham que o nome do atributo bastaria…eu acho que é interessante…algumas linguagens jah fazem assim…
Shoes, como eu disse na abertura do tópico eu entendi a questão de retirar os gets e sets e só utilizalos quando necessário etc etc etc. Já li esse artigo no fragmental e zilhões de outros. A questão é: quando você precisa utilizar uma lista da classe Pessoa por exemplo com JSTL forEach e depois imprimir todos os dados do cliente (exemplo bem básico) você necessitaria dos getters e ai qual a solução que o pessoal geralmente dá ? você por exemplo, o que você faz nesse caso ? Abraço
Daniel, foi exatamente o que eu falei. Volta-se ao caso inicial. Não estou dizendo que devemos sair criando get e set para qualquer coisa. O que eu quero dizer é ao invez de criar um metodo nome() para recuperar um atributo nome eu prefiro o getNome porque é mais compativel com tudo que é framework que se usa hoje em dia. Claro que isso somente quando necessário. O que acontece é que hoje temos muitos sistemas de consulta onde você monta uma collection poe no request e tem que iterar e exibir cada atributo de uma classe praticamente. Nessa situação eu achei muito complicado fugir dos getters. Acho que o Shoes deve ter entendido errado heim Shoes ?
Então, Emerson, como falei no outro post não tem problema você usar getNome() em vez de nome() (até é recomendado em Java), o problema não é esse. O problema é ter gets pra tudo.
Resumindo: use os gets e sets quando fizerem sentido.
Bom, ta entendido então. Eu realmente não uso get e set sem pensar se realmente preciso deles e me enganei achando que era uma má pratica a convenção mesmo com criterio. Entendi que para alguns casos terei que utilizar mesmo :). Agradeço a todos pelo esclarecimento. Abraço