Muitas ou poucas classes?

2 respostas
M

tenho uma dúvida sobre a organização do projeto. Para facilitar a manutenção do projeto eu fatorei o código em várias classes e estas classes tem poucos métodos, de 1 a 3 no máximo, em compensação basta olhar para o nome das classes que o desenvolvedor já sabe o que elas fazem, o que é melhor, muitas classes com poucos métodos ou menos classes com mais métodos ?

2 Respostas

ViniGodoy

Existem duas características que geralmente andam lado a lado.

A primeira chama-se granularidade, e refere-se exatamente ao que você falou: ao número de classes e ao quão pequenas elas são.
A segunda chama-se coesão, e refere-se ao quão específicas para uma única tarefa a classe é.

Geralmente, quanto mais coesão, melhor, o que faz com que seu projeto naturalmente tenha alta granularidade. A pegadinha está no fato de que, granularidade demais também pode fazer a classe perder seu sentido, e um trabalho as vezes ficar dividido demais entre classes que dizem pouco sobre sua tarefa. Nesse caso, a divisão foi exagerada e é igualmente danosa.

O balanço ideal entre as forças? Só a experiência dirá. Mas, de maneira geral, eu diria que o ideal é ter mais classes, menores e com pouquíssima herança.

javaflex

Existem duas características que geralmente andam lado a lado.

A primeira chama-se granularidade, e refere-se exatamente ao que você falou: ao número de classes e ao quão pequenas elas são.
A segunda chama-se coesão, e refere-se ao quão específicas para uma única tarefa a classe é.

Geralmente, quanto mais coesão, melhor, o que faz com que seu projeto naturalmente tenha alta granularidade. A pegadinha está no fato de que, granularidade demais também pode fazer a classe perder seu sentido, e um trabalho as vezes ficar dividido demais entre classes que dizem pouco sobre sua tarefa. Nesse caso, a divisão foi exagerada e é igualmente danosa.

O balanço ideal entre as forças? Só a experiência dirá. Mas, de maneira geral, eu diria que o ideal é ter mais classes, menores e com pouquíssima herança.
+ 1

Criado 12 de outubro de 2014
Ultima resposta 12 de out. de 2014
Respostas 2
Participantes 3