Algumas métricas interessantes:
junit fitnesse testNG tam jdepend ant tomcat ----- -------- ------ --- ------- --- ------ max 500 498 1450 355 668 2168 5457 mean 64.0 77.6 62.7 95.3 128.8 215.9 261.6 min 4 6 4 10 20 3 12 sigma 75 76 110 78 129 261 369 files 90 632 1152 69 55 954 1468 total lines 5756 49063 72273 6575 7085 206001 384026
Eu uso o FitNesse como uma referência porque eu tinha muito a ver com a escrita. No FitNesse, a classe média tem 77 linhas de comprimento. Nenhum tem mais de 498 linhas. E o desvio padrão é de 76 linhas. Isso significa que a grande maioria das classes tem menos de 150 linhas. Mesmo o Tomcat, que tem uma classe acima de 5000 linhas, tem a maioria das classes com menos de 500 linhas.
Considerando isso, provavelmente podemos usar 200 linhas como uma boa diretriz para ficarmos abaixo.