背景知识:作为团队负责人,我每周大约使用一次NDepend来检查代码的质量。尤其是测试覆盖率,代码行和循环复杂性指标对我来说非常宝贵。但是,当涉及到平均化和依赖周期时,我有点……非常担心。Patrick Smacchia有一篇不错的博客文章,描述了分级的目标。
需要明确的是:在“依赖周期”下,我了解两个命名空间之间的循环引用。
目前,我正在为嵌入式仪器开发基于Windows CE的GUI框架-仅考虑Android图形平台,但针对非常低端的仪器。该框架是具有约50.000行代码的单个程序集(不包括测试)。该框架分为以下名称空间:
- 核心导航和菜单子系统
- 屏幕子系统(呈现器/视图/ ...)
- 控件/小部件层
今天,我花了半天的时间试图将代码提高到适当的水平(由于Resharper总体上没有问题),但是在所有情况下都存在一些依赖周期。
所以我的问题是:您严格遵守“无依赖周期”规则吗?平整真的那么重要吗?