【发布时间】:2013-01-19 15:27:01
【问题描述】:
我正在尝试使用 NDepend 创建一个特殊查询,但无法弄清楚。
这是我想用更程序化的伪代码查询的内容:
var list
foreach type t
foreach i = t.attribute that is an interface
var nm = i.numberOfMethods
var mu = numberOfMethods that t actually uses
if mu / nm < 1
list.Add(t)
end foreach
end foreach
return list
应该列出不符合接口隔离原则的类型。
谢谢!
【问题讨论】:
-
什么是“t.attribute that is an interface”一个接口不是一个属性类?
-
在“t实际使用的numberOfMethods”中是指“t实际使用的i的numberOfMethods”请准确
-
嘿,你说得对,它并不精确。 i = 在类 t 中的任何地方使用的任何接口(可以是类变量或可以在 t 的方法中本地使用)。 “t 实际使用的 numberOfMethods”意味着例如 i 有 3 个方法:A()、B() 和 C()。在 t 内仅调用 A() 和 B()。所以“mu”应该等于2。
标签: ndepend