Dúvida sobre arquitetura

5 respostas
Marques

Colegas,

Na minha aplicação existem métodos que são utilizados por diversas classes.
Exemplo getHorasTrabalhadas(Date horaInicio, Date horaSaida).

Bem, o que fiz: Criei uma classe Utils onde coloco todos esses métodos e chamo-os assim Utils.getHorasTrabalhadas(inicio, fim).

Pergunto: Essa é a melhor abordagem para o problema? Como vc trata essa abordagem?

Muito obrigado,

Marques

public class Utils {
	
	public static Integer dateToString(Date horaInicio, Date horaSaida) {
		//Cálculo das horas trabalhadas
		}

		return horas trabalhadas;
	}

      //Outros métodos
}

5 Respostas

nbluis

A questão é;

Esse getHorasTrabalhadas não poderiam estar na entidade a que se refere ?

Afinal, de onde sai a horaInicio e horaSaida ?

sergiotaborda

Marques:
Colegas,

Na minha aplicação existem métodos que são utilizados por diversas classes.
Exemplo getHorasTrabalhadas(Date horaInicio, Date horaSaida).

Bem, o que fiz: Criei uma classe Utils onde coloco todos esses métodos e chamo-os assim Utils.getHorasTrabalhadas(inicio, fim).

Pergunto: Essa é a melhor abordagem para o problema? Como vc trata essa abordagem?

Isso tem duas aplicações:
Do ponto de vista de organização de codigo pode estar certo se criar um método generico como “HorasEntreDatas”
já que “horasTrabalhadas” é algo de negocio.

Do ponto de vista de negocio esse método deveria estar junto com essas datas.
Porvavelmente vc tem um objeto asim

Date inicio;
Date fim;

Então o método deveria ficar nesse objeto. Podendo invocar o método utilitário se necessário

Date inicio;
Date fim;

public int getHorasTrabalhadas(){
    return Utils.getHorasEntreDatas(inicio, fim );
}
Marques

nbluis ,

Esse método serviu apenas de um exemplo bem bobinho. Poderia ser qqer metodo de uso geral pelo sistema.

Muito obrigado,

Marques

HLAvila

Marques:
Colegas,

Na minha aplicação existem métodos que são utilizados por diversas classes.
Exemplo getHorasTrabalhadas(Date horaInicio, Date horaSaida).

Bem, o que fiz: Criei uma classe Utils onde coloco todos esses métodos e chamo-os assim Utils.getHorasTrabalhadas(inicio, fim).

Pergunto: Essa é a melhor abordagem para o problema? Como vc trata essa abordagem?

Muito obrigado,

Marques

Marques, esse é um conceito que pode ser utilizado sem problemas, você pode criar um pacote utils que será o canivete suíço da sua aplicação, onde estão as suas funções genéricas que são utilizadas por diversas classes da sua aplicação, evitando assim repetição desnecessária de código. Porém a utilização desse conceito fica a critério da sua análise de necessidade…

Espero ter lhe ajudado…

Adolfo_Rodrigues

Essas classes cheias de métodos estáticos não cheiram mal pra vocês? Já se perguntou se ela é realmente necessária pra sua aplicação? Será que não é o caso de modelar melhor os seus objetos?

Criado 7 de maio de 2008
Ultima resposta 7 de mai. de 2008
Respostas 5
Participantes 5