Quantidade de linhas em uma classe

7 respostas Resolvido
J

Boa noite! Sou iniciante em Java e meu professor fez um comentário que me deixou intrigado.

Segundo ele, se eu estiver trabalhando em uma classe e ela tiver mais de cem linhas, há algo de errado nela, pois em raríssimos casos uma classe tem cem linhas ou mais.

O que vocês acham?

7 Respostas

staroski
Solucao aceita

Acho que seu professor não tem experiência profissional.

Uma classe com 100 linhas não é grande, mas se passar de 500, ou 1000, provavelmente a classe está fazendo mais do que deveria.

Você também tem que evitar é criar métodos e construtores com muitos parâmetros e com muitas linhas. Eu considero de 20 a 30 linhas algo aceitável em um método.

Eu particularmente não gosto de classes com muitos métodos públicos, geralmente fica melhor fazer classes menores, talvez seja isso que seu professor queira dizer.

javaflex

Em Java 100 linhas é expressivamente pouco.

J

Pois é. Quanto a experiência dele eu não sei, nem perguntei, mas achei estranho.

Obrigado pelas respostas e pelas dicas!

darlan_machado

Pesquise sobre clean code, tem um livro muito bom sobre o assunto.
Lá o autor chega a exagerar em certas coisas (ao meu ver), dizendo que um método não deve ter mais de 2 parâmetros e mais de 5 linhas internas e coisas do tipo. Mas, é um livro excelente.

S

Seu professor está por parte errado, 100 linhas em uma classe pode ser até considerado pouco, eu mesmo tenho Interfaces que levam a 500/600… Porém eu acho que sim, uma classe para algo besta, como um “Enum” não deveria passar de 110 linhas… Mas tente diminuir o código, usando o CTRL + SHIFT + F por exemplo, que organiza tirando espaços desnecessários.

darlan_machado

Só vi isso em soluções muito antigas, sem qualquer padrão ou cuidado com boas práticas.

staroski

Livro excelente, escrito pelo Robert Martin (Uncle Bob), tem versão em português também, se chama Código Limpo.
Tem outro livro bacana que é o Clean Coder, em português é O Codificador Limpo.

O primeiro livro aborda boas práticas de desenvolvimento.
O segundo aborda aspectos mais processuais e gerenciais dentro das empresas, praticamente um código de ética para bons profissionais.

Criado 7 de junho de 2018
Ultima resposta 7 de jun. de 2018
Respostas 7
Participantes 5