科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道JAVA——避免克隆代码

JAVA——避免克隆代码

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

 比如说,如果对同一处理进行了拷贝,那么当原来的代码发生问题,所有拷贝形成的部分都必须跟着进行修改。完全避免克隆代码确实比较困难,但是,作为程序员,完全应当时刻想着把类似处理抽取出来(参照下面的例子)。

作者:黑咖啡 来源:IT专家网 2008年5月1日

关键字: 代码 克隆 避免 java

  • 评论
  • 分享微博
  • 分享邮件
说明:所谓克隆代码,是指代码中类似或者干脆一样的部分。克隆代码往往是通过粘贴操作有意地重写同样的处理而产生的。

  一般情况下,克隆代码是可维护性下降的一个重要原因。比如说,如果对同一处理进行了拷贝,那么当原来的代码发生问题,所有拷贝形成的部分都必须跟着进行修改。可是,如果不是原来那个人的话,其他人来做修改,难免遗漏应该修改的部分,从而造成代码的质量下降。

  JAVA

  完全避免克隆代码确实比较困难,但是,作为程序员,完全应当时刻想着把类似处理抽取出来(参照下面的例子)。

  另外还应当充分利用后面补充说明中推荐的工具,对代码进行检查,看看有没有克隆代码,经常有意识地进行改善。

  例 有克隆代码存在  

Void someMethod ( int arg1, int arg2) {
  …
  if (arg2 != 0) { //类似处理的候补
  p = arg1 / arg2;
  }else {
  p = 0;
  }
  …
  if (arg2 != 0) { //类似处理的候补
  q = arg1 / arg2;
  }else {
  q = 0;
  }
  …
  }
  例 对存在克隆代码的程序进行改善  Int checkSetVal ( int val1, int val2) { //OK: 抽出来的克隆部分

   补充说明: 用来检查克隆代码的工具

  用来检查克隆代码的工具主要有CPD,CCFider等。

  <免费工具 [CPD]>

  与编码检查工具PMD绑定在一起。 http://pmd.sourceforge.net/cpd.html

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章