我有一个相对复杂的软件,现在我想评估"好"我的建筑是。它是模块化的吗?这很简单吗?会更好吗?最大的缺陷在哪里?
我所知道的唯一指标是耦合和凝聚力。但我没有什么可以比较它们(它们是相对的指标对吗?或者是否有任何标准表明像小于X的耦合是好的,等等......)。
谢谢!
感兴趣的人:
耦合 - 衡量每个程序模块依赖于其他每个模块的程度。耦合越大,更难以修改或交换某些模块而不影响其他模块。
凝聚力 - 定义了某些模块的职责定义。如果模块具有高内聚性,则意味着该模块具有定义明确的任务,否则,模块会执行几个没有太多共同点的任务,这通常会导致系统混乱。
有几种方法可以计算这些指标,但我不知道标准方法。
答案 0 :(得分:1)
您可以使用code smells检测来评估您的代码。您可以在此question on programmers.stackexchange找到有关架构代码气味的进一步讨论。