1
A
回答
1
你可以发现的最大问题是绝对依赖周期。 NDepend工具提出了一个交互式dependency Matrix和一个dependency Graph,这将有助于发现dependency cyles。 声明:我的工具的开发者之一
注意,依赖矩阵是远远超过图表察觉周期调整。因为一个循环避免矩阵为三角形。
问题的其他范围是相对于你的应用程序结构:例如,它是正常的用户界面直接使用DB?或者更糟,数据库依赖于UI?
你可以写code rules over LINQ queries (CQLinq)检查禁止的依赖关系。下面的代码规则检查该UI的类型不应该直接使用DB类型:
// <Name>UI layer shouldn't use directly DB types</Name>
warnif count > 0
// UI layer is made of types in namespaces using a UI framework
let uiTypes = Application.Namespaces.UsingAny(Assemblies.WithNameIn("PresentationFramework", "System.Windows", "System.Windows.Forms", "System.Web")).ChildTypes()
// You can easily customize this line to define what are DB types.
let dbTypes = ThirdParty.Assemblies.WithNameIn("System.Data", "EntityFramework", "NHibernate").ChildTypes()
// Ideally even DataSet and associated, usage should be forbidden from UI layer:
// http://stackoverflow.com/questions/1708690/is-list-better-than-dataset-for-ui-layer-in-asp-net
.Except(ThirdParty.Types.WithNameIn("DataSet", "DataTable", "DataRow"))
from uiType in uiTypes.UsingAny(dbTypes)
let dbTypesUsed = dbTypes.Intersect(uiType.TypesUsed)
select new { uiType, dbTypesUsed }
1
是什么依赖关系图?班?存储过程?
周期是坏...
0
如果更改一个依赖意味着你需要改变了一大堆别人,这是不好的。
但是,有些环境可以帮助。
0
我不知道什么是NDepend的节目,但假象,往往会陷入很多代码段(特别是不相关的部分)将趋于恶劣(恕我直言)我认为这是“癌症代码”。
0
NFJS会议上的演讲者向我们展示了一些依赖关系图... 他指出的一个问题是寻找与您的代码库的不同功能部件之间的关系。这些可能会破坏封装。
而且我想看看每个部分的一般复杂..那些与行遍是犯罪嫌疑人。
相关问题
- 1. 容易依赖项属性
- 2. 发现哪些程序集正在加载哪些依赖关系(运行时)
- 3. 使用图形和树可以解决哪些问题或更容易解决哪些问题?
- 4. 通过Maven的依赖管理容易
- 5. 可配置的依赖关系,容易模拟默认实现
- 6. Maven中的依赖问题
- 7. 依赖性问题
- 8. 依赖问题5.6
- 9. 依赖项问题
- 10. Lucene依赖问题
- 11. 依赖问题Dart
- 12. Makefile依赖问题
- 13. Grails依赖问题
- 14. 活动图形和非依赖发现
- 15. MYSQL触发器问题 - 非常容易
- 16. 对于修复javax.xml.rpc.Service问题,哪些依赖添加到Eclipse jave项目中?
- 17. 很容易在cmake中包含头文件库依赖关系
- 18. 哪些对象应该进入一个依赖容器
- 19. DataNucleus 3.0.0-release需要哪些依赖项?
- 20. html2pdf生成依赖于哪些因素?
- 21. Qt依赖于Windows的哪些部分?
- 22. JUNG:哪些库需要依赖关系?
- 23. 哪些Specs2依赖包含AroundOutside?
- 24. 哪些依赖项会被下载?
- 25. Python依赖于哪些内核服务?
- 26. 禁用依赖方发现
- 27. Sequelize:循环依赖发现
- 28. Extjs6依赖问题与
- 29. Asp.Net依赖项问题
- 30. Maven依赖项问题