哈尔斯特德难度
R2026b自 R2024a 起
度量 ID
slcomp.HalsteadDifficulty
描述
哈尔斯特德复杂度度量用于衡量代码的大小和复杂度,可以帮助您监控代码质量,识别设计中的复杂区域,以及解决软件可维护性问题。哈尔斯特德复杂度度量之一是哈尔斯特德难度。哈尔斯特德难度是对代码读写难度的估计,它根据设计中运算符和操作数的总数以及唯一运算符和操作数的数量计算得出。
使用此度量可计算 MATLAB® 代码、Stateflow® 图和 Simulink® 设计的整体哈尔斯特德难度。
整体哈尔斯特德难度等于以下各项之和:
支持的工件
您可以针对Units和Components收集此度量。要控制仪表板将哪些对象分类为单元或组件,请参阅Categorize Models in Hierarchy as Components or Units。
计算详细信息
度量:
忽略控制流复杂度
忽略分支和跳转
收集
要收集此度量的数据,请执行度量引擎,并将 getMetrics 与度量 ID slcomp.HalsteadDifficulty 结合使用。
metric_engine = metric.Engine; execute(metric_engine,"slcomp.HalsteadDifficulty"); results = getMetrics(metric_engine,"slcomp.HalsteadDifficulty")
结果
该度量返回工程中每个单元和组件的结果。
对于每个单元和组件,该度量返回一个 metric.Result 对象,其属性包括:
Value- 单元或组件的整体哈尔斯特德复杂度Scope- 包含单元或组件相关信息的结构体