SonarQube的代码坏味道详解

简介: SonarQube的代码坏味道

定义

CodeSmell就是翻译过来有叫坏味道也有叫代码异味的,这主要是一个和维护性相关的指标,重点的含义是保持这样的代码,会导致代码维护成本越来越高,时间长了会导致很多无法理解的代码留存在项目中,从而可能会引起一些缺陷。

等级划分

可维护性从A级别到E级别,分别表示了从非常好的可维护性到非常差的可维护性,这是由技术债务比率解决的,技术债务比率计算如下:

技术债务比率=项目的技术债务的成本/从零开始重写代码所需的成本

  • A级别:技术债务比率<=0.05
  • B级别:0.05<技术债务比率<=0.1
  • C级别:0.1<技术债务比率<=0.2
  • D级别:0.2<技术债务比率<=0.5
  • E级别:0.5<技术债务比率

那么一个项目怎么利用上述公式计算了,下面举个例子:

假设开发成本是30分钟,2500 LOC的技术债务为24000分钟的项目将有技术债务比率为24000 /(30 * 2,500)= 0.32。 因此项目的可维护性评级就是D。那么这里的LOC是开发一行代码的成本,目前采用默认的时间是30分钟,也就是LOC=30分钟(这里LOC通过从零开始重写代码所需的成本计算的。)

目录
相关文章
|
2月前
|
人工智能 自然语言处理 运维
当你发现同事的代码生成速度比你快,注释比你多,别慌,可能是因为……
当你发现同事的代码生成速度比你快,注释比你多,别慌,可能是因为……
|
8月前
|
缓存 Java 应用服务中间件
2021年9月28日,老是遇到一些非常奇葩的问题。就离谱、好好的一个web项目就莫名奇妙坏了。
开发者在使用IDEA 2020编辑器搭建的SSM框架图书管理系统中,遇到删除功能异常问题,经过一系列尝试后发现是IDEA编译缓存导致的,最终通过重新编译项目解决了问题。
|
11月前
|
Java 测试技术 开发者
万字长文:一文详解单元测试干了什么
好的单元测试不仅可以验证代码结构设计的是否合理,而且可以提前发现代码中的漏洞,将线上风险扼杀在摇篮中。本文从常用的单元测试框架出发,对Mockito框架深入浅出的讲解,希望能帮到每一位同学。
|
jenkins Shell 测试技术
SonarQube实战:各种姿势的代码审查(二)
在Jenkins中集成SonarQube,各种姿势的代码审查。
335 0
消除代码坏味道
读完本章的收获:代码规范、代码可读性、鲁棒性的代码好坏案例,写出好代码的能力。
消除代码坏味道
|
数据库
代码坏味道
代码坏味道
182 0
|
数据库
我又写了一堆烂代码
“我又写了一堆烂代码!” 这句话我经常对自己说,目的是为了督促自己不断地思考所写的代码是否足够可靠。
84 0
|
SQL 存储 监控
聊聊那些年遇到过的奇葩代码
无论是开发新需求还是维护旧平台,在工作的过程中我们都会接触到各种样式的代码,有时候会碰到一些优秀的代码心中不免肃然起敬,但是更多的时候我们会遇到很多奇葩代码,有的时候骂骂咧咧的吐槽一段奇葩代码后定睛一看作者,居然是几个月以前自己的写的,心中难免浮现曹操的那句名言:不可能,绝对不可能。
聊聊那些年遇到过的奇葩代码
|
程序员 API 数据库
想要写出好味道的代码,你需要养成这些好习惯!
大家好,我是小羽。无论做什么行业,良好的习惯会让我们受益终生。它就如我们的指南针一样,指引着我们的行动,从而走向成功。养成良好的习惯,会让我们的工作更加顺利,生活也会变的更加清晰。当我们久...
216 0
想要写出好味道的代码,你需要养成这些好习惯!
|
数据安全/隐私保护
单一职责原则-敲代码你不能只自己爽,大家爽才是真的爽
单一职责原则-敲代码你不能只自己爽,大家爽才是真的爽
131 0
单一职责原则-敲代码你不能只自己爽,大家爽才是真的爽
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等