Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Seter para id de Classe

Considerando a afirmação:

"Vale lembrar que nem sempre devemos criar setters para tudo. O ideal é criar apenas quando e se for necessário."

Qual o objetivo de termos o seter de um id em um classe, tendo em vista que ele e uma info de atonum gerado pelo banco que sera imutavel na execucao do progama?

3 respostas

Marcio,

o ideal seria não criar mesmo um setId() para os objetos, uma vez que isso poderia gerar alguma bagunça nos registros.

Quando trabalhei com PHP, não utilizava frameworks, era tudo feito na mão mesmo, então não sei bem como anda esse processo hoje.

No Java, temos o Hibernate, que cuida dessa parte de persistência. Fato curioso é que ele precisa dos getters and setters das classes para poder manipular os dados, embora ele não faça bagunça alguma com isso. No desenvolvimento web com Java, criamos os getters and setters sem muitos problemas, mas apenas o hibernate manipula os dados. Temos essa preocupação de não criar para todos os atributos nas classes das outras camadas (regra de negócio/serviço e camada de apresentação).

Então, se você for usar um framework de persistência PHP, como o Doctrine ou Engine DB, melhor dar uma verificada na documentação para saber se ele exige a criação dos getters and setters de todas as classes, para que ele possa manipular as entidades corretamente.

No mais, a criação dos getters and setters deve passar por uma avaliação de real necessidade da criação, visando evitar a quebra de encapsulamento.

Qualquer outra dúvida, só postar!

Abraço.

Que bacana Manoel!! achei q eu era o unico q nao utilizo framework no desenvolvimento na terra... :)

( ate uso, mas alguns que desenvolvi ao longo dos anos)

Essa é uma questão mais conceitual mesmo,... não consigo ( pelo menos ainda) entender pq alterar o valor de um id dentro do meu objeto...

Obrigado!

solução!

A vida fica mais sofrida fazendo tudo na mão... hehe.

Hoje trabalho com Java e uso o Hibernate. Ele é bem maduro, além de fornecer a transparência necessária para dar segurança ao desenvolvedor de que não há "mágica".

Mas a dica é seguir o que foi passado na aula mesmo: não criar get e set a torto e a direito. Tem um artigo pequeno e muito bacana no blog da Caelum sobre isso (http://blog.caelum.com.br/nao-aprender-oo-getters-e-setters/).

Qualquer dúvida, só postar.

Bons estudos.

Abraço.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software