zoukankan      html  css  js  c++  java
  • 通过Visual Studio 的“代码度量值”来改进代码质量

    1 软件度量值指标

    1.1 可维护性指数

      表示源代码的可维护性,数值越高可维护性越好。该值介于0到100之间。绿色评级在20到100之间,表明该代码具有高度的可维护性;黄色评级在10到19之间,表示该代码适度可维护;红色评级在0至9之间,表示低可维护性。

    1.2 圈复杂度

       它是通过计算程序流中不同代码路径的数量来创建的,用来表示一个程序的复杂性。具有复杂控制流的程序需要更多的测试才能获得良好的代码覆盖率,并且不易维护。

      以下两种情况会在计算圈复杂度时加1:

    •   分支(if、while、do)
    •   switch中的case语句  

      例如:

    复制代码
        //圈复杂度1
        public void Method()
        {
            Console.WriteLine("Hello World!");
        }
    
        //圈复杂度3
        public void Method(bool condition1, bool condition2)
        {
            if (condition1 || condition2)
            {
                Console.WriteLine("Hello World!");
            }
        }
    
        //圈复杂度8
        public void Method(DayOfWeek day)
        {
    
            switch (day)
            {
                case DayOfWeek.Monday:
                    Console.WriteLine("Today is Monday!");
                    break;
                case DayOfWeek.Tuesday:
                    Console.WriteLine("Today is Tuesday!");
                    break;
                case DayOfWeek.Wednesday:
                    Console.WriteLine("Today is Wednesday!");
                    break;
                case DayOfWeek.Thursday:
                    Console.WriteLine("Today is Thursday!");
                    break;
                case DayOfWeek.Friday:
                    Console.WriteLine("Today is Friday!");
                    break;
                case DayOfWeek.Saturday:
                    Console.WriteLine("Today is Saturday!");
                    break;
                case DayOfWeek.Sunday:
                    Console.WriteLine("Today is Sunday!");
                    break;
            }
        }
    复制代码

    1.3 继承深度

      计算在继承层次结构中的继承深度,继承树中层次结构越深,类的开发、测试和维护就越复杂,因为层次结构越深,理解特定方法和字段的定义和(或)重新定义的难度也就越大。

    1.4 类耦合度

      类耦合是一个类是如何与另一个类连接或依赖的度量。好的做法是总是实现较少的依赖类或低级耦合。

    1.5 代码行数

      表示代码行数,计数基于IL代码,因此不是源代码文件中的确切行数。一个非常高的计数可能表明一种类型或方法试图做太多的工作,应该分开。它还可能表明类型或方法可能难以维护。

    2 计算代码度量值

     Step 01 运行“计算代码度量值”

    Step 02 查看“代码度量值结果”

    Step 03 使用“代码度量值结果”

      筛选:

      导出:

     

      列管理:

       计算代码度量值:

    参考文档:https://www.codeguru.com/csharp/csharp/cs_network/improving-code-quality-with-visual-studio-code-metrics.html

  • 相关阅读:
    Eclipse护眼技巧
    Maven搭建SSM框架(Spring+SpringMVC+MyBatis)
    Spring之各jar包作用
    Maven新建web项目jsp报错
    js金额转大写(万元为单位)
    linux常用指令
    ie8下数组不支持indexOf方法解决方法
    string,stringBuffer,stringBuilder的比较
    input限制输入
    spring boot Mybatis --maven
  • 原文地址:https://www.cnblogs.com/xiaohua19920/p/9372892.html
Copyright © 2011-2022 走看看