气味识别应用_您的软件有气味吗? 使用DesignateJava编写更好的代码

气味识别应用

这里有什么味道吗?还是只是您的代码? 镇上有一个新工具可以帮助评估Java代码质量。 DesigniteJava“检测到大量的设计和实现气味”。 喷洒香水,了解它如何帮助您的代码发光。

您的代码

DesignateJava帮助减少软件中的技术负担 。 技术债务是开发人员中浪费时间最多的工具之一。 正如我们之前讨论的那样,糟糕的代码是C级主管和开发人员所无法看到的,并且使开发人员无法达到更高的生产率水平。

除此之外,老实说,修复不好的代码只会发臭

设计气味不是您的Smell-O-Vision所能吸收的。 在其FAQ页面上,DesigniteJava引用了Girish等人的“软件设计气味的重构:管理技术债务”中的定义:

设计气味是设计中的某些结构,它们表明违反了基本设计原则并对设计质量产生了负面影响。

这些异味使软件难以理解,从而影响了软件的性能。 FAQ继续解释说:“设计气味的存在降低了易理解性,可变性和灵活性,导致软件系统难以理解和更改。” 现在,与此相关的问题只会导致以后花费时间来修复它们,并且还会产生越来越多的技术债务。

本质上,设计异味是软件变坏的征兆。 当它们存在时,就该进行重构了。 设计气味不仅限于错误,还包括错误,它们是糟糕的设计选择,会影响整个项目的稳定性。 想想房屋的基础。 设计气味是由玻璃或牙签制成的粉底,而不是固体水泥。

还请参见: Java在无服务器领域竞争需要什么?

深度清洗Java代码

DesignateJava检测到17种设计气味和10种实现气味。 (当我们等待新的JDK时,现在正是准备和准备Java工具包的最佳时机!)

DesignateJava寻找的一些常见设计气味包括:

  • 命令式抽象
  • 多面抽象
  • 不必要的抽象
  • 未利用的抽象
  • 封装不足
  • 未利用的封装
  • 模块化破损
  • 依赖循环的模块化
  • 模块化不足
  • 集线器式模块化
  • 层次结构破裂
  • 循环层次
  • 深层次
  • 缺少层次结构
  • 多路径层次结构
  • 叛逆阶层
  • 宽层次

至于实现气味,请告别这些:

  • 构造函数的抽象函数调用
  • 复杂条件
  • 复杂方法
  • 长方法
  • 空捕获条款
  • 长标识符
  • 长参数列表
  • 幻数
  • 缺少默认值
  • 长声明

还请参见“开发人员会将Java 11视为他们在Java 8中使用的功能的更好,更清洁的实现”

除此之外,DesignateJava还计算13个面向对象的指标:

  • LOC(代码行–方法和类的粒度)
  • CC(圈复杂度-方法)
  • PC(参数计数–方法)
  • NOF(字段数-类)
  • NOPF(公共领域数量,类)
  • NOM(方法数量-类)
  • NOPM(公共方法数量-类)
  • WMC(每类的加权方法–类)
  • NC(儿童人数-班级)
  • DIT(继承树的深度–类)
  • LCOM(方法缺乏内聚性-类)
  • FANIN(范内语-类)
  • 扇出(扇出-类)

要深入了解这些内容,可以在FAQ中找到

在此处阅读有关GitHub的更多信息,并从网站获取可执行jar。 为了开始使用,您需要Maven或Eclipse来安装该工具以及Java 8或更高版本。

在Tushar Sharma,Antonis Gkortzis,Theodore Stassinopoulos和Alexandra Chaniotakis所做的工作中得到了热烈的掌声。 在我们倒计时到Java 11之前的日子里,很高兴看到越来越多的开源项目使Java的编写变得轻而易举。

翻译自: https://jaxenter.com/designate-java-design-smells-149363.html

气味识别应用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值