对于面向对象的语言(比如 C++、C#、Java 等),类数与代码行数的良好比率是多少?
包括经理在内的许多人都喜欢用传统的 LOC(代码行)度量来衡量软件的复杂性,而许多顽固的面向对象的开发人员会说 LOC 毫无价值,因为它的类数才是重要的。而且我个人认为,类可能是一个更合理的复杂性度量,但是如果没有 LOC 度量,这些类的实际复杂性(其中的恶作剧者和神灵的数量)很难估计。
因此,有人知道对于一些编码良好的软件来说,什么可能是一个健康的比率?
编辑:在这种特殊情况下,我正在寻找一个比率来确定清理代码可能需要多少重构的大致估计。
编辑:有人知道一些大型 OSS 项目(如 Firefox、Apache、Webkit 等)的比率吗?