Dicas para o projeto de classes no Java (parte 1)

Publicado por Ygor Thomaz em 21/06/2004

[ Hits: 7.727 ]

Blog: http://www.ygorthomaz.net/

 


Dicas para o projeto de classes no Java (parte 1)



Esta série de dicas irá tratar de detalhes importantes na modelagem e no projeto das classes que comporão um determinado sistema. Fortalecendo o conhecimento de quem esta acompanhando a série de artigos sobre orientação a objetos no Java feitas por mim.

1. Mantenha os atributos das classes com acesso privado.

Quando trabalhamos com dados privados, podemos seguir a risca o conceito de encapsulamento, pois são inacessíveis aos usuários da classe, deixando o código mais "seguro", pois os mesmo não irão atribuir valores inconsistentes aos atributos. Sendo assim teremos que usar os métodos conhecidos como "acessor methods", ou seja, métodos que permitem ler o conteúdo armazenado nestes atributos privados e os "mutator methods" que permitem modificar estes atributos. Um exemplo de uma implementação consistente por estar utilizando eles seria:

// atributo
private double dimensao;

// mutator method ou método de escrita
public void setDimensao(double d) {
  if(f>=0) {
    dimensao = d;
  }

// acessor method ou método de leitura
public double getDimensao() {
  return dimensao;
}

Podemos observar que para um atributo com nome de dimensão, uma prática interessante para padronização de código seria chamar o seu "acessor method" de getDimensao() e o seu "mutator method" de setDimensao().

Ex: getNome; setEndereco.

2. Temos que estar atentos a atributos que não necessitam destes métodos de acesso, mesmo sendo privados. Cabe ao programador analisar quando será necessário fazer este tipo de acesso.

3. Quando temos atributos que não podem ser definidos como privados, podemos definir eles como protegidos. Isso se for necessário que os métodos de acesso de certos atributos sejam modificadas em classes derivadas ou se for necessário utilizar diretamente estes atributos em classes derivadas. Um exemplo simples seria:

// atributo
protected int numeros[];

// acessor method ou método de leitura
protected int getNumero(int index) {
  return numeros[index];
}

//mutator method ou método de escrita
protected void setNumero(int index, int value) {
  numeros[index] = value;
}
Outras dicas deste autor

Relatório de objetos inválidos no SGDB Oracle

Logando make, compilações e atividades em geral

Generatedata - Populando base de dados para testes

CVS - usando compactação de dados, para conexões lentas

Instalando o Oracle 10g no Red Hat Enterprise Linux 5

Leitura recomendada

Hospedando projetos open source com o site kenai.com usando o Netbeans 6.7

Caindo na real

Centralizar JFrame utilizando o NetBeans

Dicas para o projeto de classes no Java (parte 2)

Instalação manual do Java (JRE) em 4 passos

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts