Understand架构视图可以把文件、类、函数重新组织到业务模块或技术分层中,再查看模块依赖。处理“Understand架构视图怎么生成Understand架构视图层级混乱如何调整”时,先确定划分逻辑,再映射代码实体。目录、功能和人员混在同一层,图形很快就会失去分析价值。
一、Understand架构视图怎么生成
Understand内置Directory Structure、Calendar和Languages等架构,也支持建立自定义架构。前者适合快速浏览,后者适合表达业务域和软件层级。
1、确定架构划分方式
架构可以按业务功能、技术层、产品组件或代码负责人划分。比如业务架构设置订单、账户、报表,技术架构设置界面层、服务层、数据层。
同一张架构最好只保留一种主逻辑。源码目录可以作为实体来源,却不必原样复制。
2、创建自定义架构
①完成项目分析,确认主要实体能够识别。
②进入【Architectures】→【Design Architectures】→【New Architecture】。
③填写架构名称。
④在左侧轮廓区输入各级节点。
⑤使用空格或Tab设置父子层级。
⑥从右侧【Directory Structure】拖动实体到对应节点。
Architecture Designer提供图形和文本两种编辑方式。修改会立即保存,关闭后无法继续撤销,因此大范围调整前可先复制架构。
3、生成架构图和依赖图
①打开【Architectures】→【Browse Architectures】。
②展开架构并选中顶层节点。
③右击选择【Graphical Views】。
④用【Graph Architecture】查看层级。
⑤用【Internal Dependencies】查看依赖。
架构图侧重节点组织,依赖图侧重引用方向。出现双向关系时,可继续查看形成依赖的文件和代码位置。
二、Understand架构视图层级混乱如何调整
层级混乱常表现为节点深浅不一致、文件重复归属、文件名与功能模块并列,或者交叉连线过多。先整理架构树,再分析依赖。
1、统一同级节点粒度
①进入【Architecture Designer】。
②检查同一级是否表达同一种对象。
③把过细的文件节点合并到模块中。
④把职责过大的节点拆成子模块。
⑤将临时版本和人员名称移出功能架构。
例如“用户模块”“支付模块”和“utils.cpp”不应处在同一级。后者只是文件,应归入公共工具或具体业务模块。
2、重新调整实体归属
①拖动自定义节点调整父子关系。
②右击使用【Rename】统一命名。
③删除重复或失效节点。
④通过【Add to Architecture】重新分配实体。
⑤使用【Remove from Architecture】移除错误映射。
自定义节点可以移动、重命名和删除,内置架构不能直接修改。从内置架构拖入自定义架构时,节点会被复制。实体归属还会影响依赖计算,映射不准时,依赖边也会失真。
3、检查遗漏文件
①同时打开【Project Browser】和【Architecture Browser】。
②在项目浏览器中选择【Hide By】当前架构。
③将剩余文件拖到合适节点。
④处理完成后恢复【Hide By】→【None】。
完整分析时,应明确业务代码、测试代码、生成代码和第三方库的去向。遗漏太多会让依赖图出现断层。
三、层级调整后怎么验证
层级整齐还不够,还要确认依赖方向符合设计。
1、核对实际依赖
①右击架构节点选择【View Dependencies】。
②查看依赖对象和被依赖对象。
③按调用、包含、继承等关系筛选。
④双击引用跳转到源码。
⑤判断异常关系来自错误映射还是真实调用。
依赖浏览器会列出形成架构依赖的具体引用,也能导出CSV。
2、设置依赖检查
①进入【Checks】→【Configure Dependency Checks】。
②选择需要限制的架构节点。
③设置允许或禁止的依赖方向。
④保存并运行检查。
⑤根据违规记录定位源码。
例如可禁止基础层反向依赖界面层。规则固定后,后续分析能持续发现新增的越层依赖。
总结
“Understand架构视图怎么生成Understand架构视图层级混乱如何调整”的重点,是按统一逻辑组织代码,并让每个实体落到清楚的模块位置。层级整理后结合依赖图和检查规则验证方向,架构视图才能用于结构分析。希望本文能为大家梳理Understand项目架构提供参考,如需进一步了解相关内容,欢迎联系咨询。