zoukankan      html  css  js  c++  java
  • 代码静态测试(java)

    工欲善其事,必先利其器

    环境

    • jdk1.8
    • IntelliJ IDEA

    1.静态代码检查

    1.1工具

    • 阿里代码规范检测工具

    安装教程:阿里代码规范检查工具

    1.2规范等级

    在 Snoar 中对代码规则有五个级别,这是前三个:崩溃/严重/重要 ,也就是说前两级别是必须要处理掉的。

    Blocker:

    ​ 即系统无法执行、崩溃或严重资源不足、应用模块无法启动或异常退出、无法测试、造成系统不稳定。
    严重花屏、内存泄漏、用户数据丢失或破坏、系统崩溃/死机/冻结、模块无法启动或异常退出、严重的数值计算错误、功能设计与需求严重不符、其它导致无法测试的错误, 如服务器500错误

    Critical

    ​ 即影响系统功能或操作,主要功能存在严重缺陷,但不会影响到系统稳定性。
    功能未实现、功能错误、系统刷新错误、数据通讯错误、轻微的数值计算错误、影响功能及界面的错误字或拼写错误、安全性问题

    Major

    ​ 即界面、性能缺陷、兼容性。操作界面错误(包括数据窗口内列名定义、含义是否一致)、边界条件下错误、提示信息错误(包括未给出信息、信息提示错误等)、长时间操作无进度提示、系统未优化(性能问题)、光标跳转设置不好,鼠标(光标)定位错误、兼容性问题

    Minor/Trivial

    ​ 即易用性及建议性问题。界面格式等不规范、辅助说明描述不清楚、操作时未给用户提示、可输入区域和只读区域没有明显的区分标志、个别不影响产品理解的错别字、文字排列不整齐等一些小问题

    1.3阿里开发手册

    下载地址:https://www.lanzous.com/i4jauib
    密码 : 9tz4

    2.代码优化

    2.1工具

    JProfiler 安装教程:https://blog.csdn.net/wytocsdn/article/details/79258247

    2.2从哪些方面:结构&效率

    百度了一下,如下:

    (1)优化算法时间复杂度。
    (2)减少冗余数据。
    (3)合理使用 copy 与 deepcopy。
    (4)使用 dict 或 set 查找元素。
    (5)合理使用生成器(generator)和 yield
    (6)优化循环。
    (7)优化包含多个判断表达式的顺序。
    (8)使用join合并迭代器中的字符串。
    (9)选择合适的格式化字符方式。
    (10)不借助中间变量交换两个变量的值。
    (11)使用 if is。
    (12)使用级联比较 x < y < z。
    (13)while 1 比 while True 更快。
    (14)使用**而不是 pow。
    (15)使用 cProfile, cStringIO 和 cPickle 等用 c 实现相同功能(分别对应profile, StringIO, pickle) 的包。
    (16)使用最佳的反序列化方式。
    (17)使用 C 扩展(Extension)。
    (18)并行编程。
    (19)终级大杀器:PyPy。
    (20)使用性能分析工具。

    参考博文:https://blog.csdn.net/q911137905/article/details/90142984

    个人觉得:

    1. 结构:尽量遵守七大OO设计原则,可以学习一下Gof23(设计模式)。

    2. 效率:算法,优化循环,减少对象创建,多线程,不要写慢SQL。

    2.3 Web项目检测

  • 相关阅读:
    静态与非静态(转改)
    关于odp.net的FetchSize属性
    SQL_SERVER 导oracle(转)
    win7电脑上wifi
    Oracle对象统计信息
    SQL_SERVER 连接oracle(转)
    linq in 语法
    关于引擎的设计
    温习设计模式
    技巧类
  • 原文地址:https://www.cnblogs.com/chang1024/p/12469959.html
Copyright © 2011-2022 走看看