Não há regra absoluta para isso. Contudo uma classe com muitas linhas indica que talvez ela esteja fazendo coisas de mais. Portanto é boa prática analisar com mais carinho classes muito grandes.
luis.soares
Uma classe deve ser coesa, ou seja, saber cuidar das suas responsabilidades.
Se uma classe está muito grande, provavelmente está exercendo papéis que deveria delegar a outras classes.
Exemplo simples:
Imagine uma classe pedido, que tenha método para conectar no banco de dados, calcular os totais do pedido, os impostos, imprimir … (nossa, quanta besteira !! arrrggg…). Bom, está tudo errado !
Porque na verdade a classe está com funcionalidades que não são delas.
O correto seria ter classes de conexão ao banco (DAO), classes de regras de negócio, utilidades (impressão), ou seja, cada uma com responsabilidades definidas.
Se o sistema for corretamente modelado, usando padrões de projeto e orientação a objetos de forma correta, você não vai ter problemas com classes “grandes demais”, tenha certeza.
Abraço !
Bravox
Não !! dés que vc não fuja da orientação a objetos ou seja se perceber que a sua classe tá fazendo coisa que podia estár em outras classes dessa forma ficando mais parecido com um programa estruturado do que orientado a objetos pode se dizer que existem alguma coisa de errado ai .Não que o seu programa não vai funcionar mais sim que vc não está usando o verdadeiro
poder da orientação a objetos
bravox
T
thingol
Fugindo um pouco da parte de design:
Se uma classe for excessivamente grande (passar de 64 KB de código compilado) ela terá problemas ao ser carregada. Mas é difícil criar uma classe dessas, exceto se ela tiver sido gerada dinamicamente (por exemplo, o JSP Compiler costuma criar classes muito grandes se a página JSP original for muito grande).
Mantu
thingol:
Fugindo um pouco da parte de design:
Se uma classe for excessivamente grande (passar de 64 KB de código compilado) ela terá problemas ao ser carregada.
De que natureza?
T
thingol
Por exemplo, se um método for muito grande (ele tiver mais de 64 KB de código compilado), e se ele tiver um loop que tem de dar um “salto” muito grande - aqui estou falando de bytecodes - , o compilador normalmente não sabe tratar isso, e acaba gerando código errado ou se recusando a gerar código.)