Instanciar objeto

Salve povo !
Estou com uma dúvida aqui: tenho uma entidade só que a tal tem mais de 30 atributos (32 para ser exato) e fiquei pensando: jogar todos no construtor ? É coisa pra dedéu !
Em contra partida não achei sentido para criar todos setters 1 para cada atributo - ao meu ver é desnecessário.

Gostaria de saber o que vocês fazem por aí quando isso acontece.

Abraços !

Depende.

  1. instanciar no construtor é muito e desnecessários. Lembre que alguns atributos são iniciados por default, qdo um valor não lhe é atribuído. Instancia somente os atributos que extremamente necessários à classe.
  2. Se os atributos serão acessados por outros objetos, então a melhor maneira é usar get/set ou funções equivalentes.
  3. Se existem atributos que são de uso interno (private), então realmente não precisa de get/set, dependendo do caso.

Minha opinião.

Abraços

[quote=hlegius]Salve povo !
Estou com uma dúvida aqui: tenho uma entidade só que a tal tem mais de 30 atributos (32 para ser exato) e fiquei pensando: jogar todos no construtor ? É coisa pra dedéu !
Em contra partida não achei sentido para criar todos setters 1 para cada atributo - ao meu ver é desnecessário.

Gostaria de saber o que vocês fazem por aí quando isso acontece.

Abraços ![/quote]
oLÁ, vc pode usar o construtor telescopio.
no effective 2 ed fala sobre.

Ou seus Sets podem retornar this.
De uma pesquisada.

É necessário todos estes atributos em uma só tabela? Os dados estão normalizados?

Se realmente tenha necessidade de possuir essa quantidade de atributos e não tem como distribuir em outros objetos, passa o objeto pelo construtor então , é uma alternativa.

Penso que sim. É a descrição de um elemento do projeto que neste caso é um Barco. Ele tem lá vários e vários atributos para descrevê-lo. A princípio, parece-me que não há por quê separar esses atributos em outras classes.

Hum, nunca ouvi falar disto. Se tiver um exemplo, pois dei uma pesquisada na rede e não encontrei nada referente :confused:

Agradeço as dicas galera :slight_smile:

Penso que sim. É a descrição de um elemento do projeto que neste caso é um Barco. Ele tem lá vários e vários atributos para descrevê-lo. A princípio, parece-me que não há por quê separar esses atributos em outras classes.

Hum, nunca ouvi falar disto. Se tiver um exemplo, pois dei uma pesquisada na rede e não encontrei nada referente :confused:

Agradeço as dicas galera :)[/quote]

No Effective Java, fal sobre isso, bem no inicio do livro.
Repare nos construtores:

[code]
private String placa;
private String modelo;
private int ano;

public Carro(String pla){
	this(pla,"");
}
public Carro(String pla, String mod){
	this(pla,mod,0);
}
public Carro(String pla, String mod, int ano){
	
	modelo = mod;
	placa = pla;
	this.ano = ano;
}[/code]

Grande, a ideia é bem simples, vc utiliza o construtor q atribui os valores nos atributos q vc da mais importancia.
Ai vc cria um esquema, q os proprios construtores vao chamando os outros construtores, isso lembra um telescopio…