zoukankan      html  css  js  c++  java
  • AS3/Flex 代码审查工具 – FlexPMD

    FlexPMD 是什么?
    FlexPMD 是一款免费开源的 AS3/Flex 代码审查工具,由Adobe 发布。

    FlexPMD 通过审查 AS3/Flex 目录检测常见的不良用法,例如:

    • 未使用的代码(函数,变量,常量等)
    • 无效代码 (滥用动态过滤器, 厚重的构造器等)
    • 过于复杂的代码 (嵌套循环, 条件过多等)
    • 代码过长 (类, 方法等)
    • 错误使用组件的生命周期 (commitProperties 等)

    FlexPMD 使用了PMD部分机能,原理与其类似,也是通过规则定义检测内容。
    截止发稿时 FlexPMD 已有 20 个规则组,包括 100 多个规则,当然你也可以自定义规则以扩展当前机能。

    你可以通过以下方式调用 FlexPMD:

    • The command line
    • Maven
    • Ant
    • Automator on Mac OS X
    • Eclipse
    • TextMate on Mac OS X
    • FlashDevelop

    官方站点
    http://opensource.adobe.com/wiki/display/flexpmd/FlexPMD

    安装 FlexPMD 插件

    1. 打开 Eclipse
    2. 点击 Help > Install New Software… > Add…
    3. 在打开的对话框中输入以下内容,之后点击 OK 按钮
      Name: http://opensource.adobe.com/svn/opensource/flexpmd/plugin/trunk/flex-pmd-eclipse-plugin-site
    4. 待信息显示后全选
    5. 按安装向导下一步直至完成
    6. 安装成功后你会在以下两处位置看到 FlexPMD 项
      选择 Window > Preferences,在打开的对话框中
      右键 Flex 工程,打开的菜单中

    下载 FlexPMD 插件所需 jar 包

    1. 从 FlexPMD 下载页下载最新的 All-in-one-bundle 类型压缩包
    2. 解压上诉文件到某一目录(我放在 C:\FlexPMD 下)

    生成 FlexPMD 规则配置文件
    FlexPMD 有一个在线规则组创建器,你可以通过它了解、屏蔽、追加规则,之后导出这些规则到某一目录(我放在 C:\FlexPMD\rules 下)

    配置 FlexPMD 插件

    1. 选择 Window > Preferences > FlexPMD
    2. 在打开的对话框中入力以下内容,其他默认
      FlexPMD command line installation:C:\FlexPMD\flex-pmd-command-line-1.2.jar
      FlexPMD custom ruleset:C:\FlexPMD\rules\pmd_rule.xml
      FlexCPD command line installation:C:\FlexPMD\flex-pmd-cpd-command-line-1.2.jar
    3. 点击 OK

    运行 FlexPMD
    FlexPMD 已安装完成,使用很简单:

    1. 选择 Flex 工程根或工程下的目录,文件
    2. 右键 FlexPMD > Run FlexPMD

    FlexPMD設定规则一览

    FlexPMD是什么?
    FlexPMD是一种 ActionScript 工具,类似于 JavaPMD。FlexPMD 通过审核 ActionScript 3.0 或 Flex 源目录来提高代码品质。

    FlexPMD能检测出什么问题?
    它可以检测出品质欠佳的代码编写方法,例如未使用的代码、过度复杂的代码、过长的代码和使用不正确的 Flex 组件生命周期。
    如:
       1. 绑定规则:
          绑定类时使用了硬编码的字符串;
          绑定表达式过长。

       2. Cairngorm规则:
          ModelLocator必须是不可绑定的;
          一个Cairngorm事件的名称应在实际事件名称前包含功能区名称。

       3. 使用组件规则:
          不要通过updateDisplayList方法添加或删除可显示的子对象;
          不要明确的调用callLater。

       4. 表达式规则:
          Catch语句不能为空;
          If语句不能为空。

       5. 可维护性规则:
          导入类的数量过多;
          包含了硬编码的布尔值;
          方法为空;
          …

       6. 命名规则:
          在变量名字最后使用数字,不利于理解它的含义;
          类名字必须以大写字母开头;
          接口名字应该以字母I开头;
          …

       7. 实装规则:
          存在全局绑定类;
          在循环内部定义了变量;
          过多的嵌套if语句;
         
  • 相关阅读:
    Django 查询filter 常见查询方法
    Django form表单
    Django的认证系统
    django 中间件
    tricks or tips
    Git
    Paper Reading: A Brief Introduction to Weakly Supervised Learning
    Paper Reading: Dynamic Routing Between Capsules (NIPS 2017)
    Paper Reading: Recombinator Networks: Learning Coarse-to-Fine Feature Aggregation (CVPR 2016)
    Paper Reading: 3D Hand Pose Estimation: From Current Achievementsto Future Goals (CVPR 2018)
  • 原文地址:https://www.cnblogs.com/daichangya/p/12959900.html
Copyright © 2011-2022 走看看