代码静态检查

代码评审技术

代码审查(Code Review)是一种用来确认方案设计和代码实现的质量保证机制,它通过阅读代码来检查源代码与编码规范的符合性以及代码的质量。

代码审查的作用

  • 检查设计的合理性
  • 互为 Backup
  • 分享知识、设计、技术
  • 增加代码可读性
  • 处理代码中的“地雷区”

缺陷检查表

Python代码分析工具

Pylint 是一个 Python 代码分析工具,它用于分析 Python 代码的错误,查找不符合代码风格标准(Pylint 默认使用的代码风格是 PEP 8)和有潜在问题的代码。

Pylint功能

  • 检查代码风格是否符合PEP8规范
  • 检查代码是否存在常见的错误和违反最佳实践
  • 检查重复的代码

Pylint 安装与使用

Pylint 安装:

pip install -U pylint # 安装最新版的Pylint

Pylint 使用:

pylint    [op0ons]    module_or_package_or_file # 对模块/包/文件运行pylint

--rcfile= 指定检查的配置文件
--ignore= 不进行检查的文件列表
--disable= 关闭某种类型的检查
-f 报告类型, 如html

代码静态分析工具

    • Checkstyle:通过对代码编码格式、命名约定、Javadoc、类设计等方面进行代码规范和风格的检查。
    • FindBugs:通过检查类文件或JAR文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析。
    • PMD:通过其内置的编码规则对Java代码进行静态检查,主要包括对潜在的Bug、未使用的代码、重复的代码、循环体创建新对象等问题的检验。
    • Jtest:能够按照其内置的超过800条的Java编码规范自动检查并纠正这些隐蔽且难以修复的编码错误,同时还支持用户自定义编码规则,帮助用户预防一些特殊用法的错误。
    • 微软Visual Studio中的代码分析工具可以检查代码中是否存在一些常见缺陷和违反良好编程习惯的情况。
    • 微软Visual Studio中的代码分析工具可以检查代码中是否存在一些常见缺陷和违反良好编程习惯的情况。
    • JSHint(www.jshint.com)是一款JavaScript代码验证工具,用于检测代码中的错误和潜在问题。
    • CSSLint(csslint.net)是一款CSS代码检查工具,可以进行基本语法检查以及使用一套预设的规则来检查代码中的问题。
    • HTMLHint(htmlhint.com)是一款基于JS开发的静态扫描组件,支持所有浏览器和Nodejs平台,可集成到IDE环境或编译系统中。
时间: 2024-10-02 20:10:31

代码静态检查的相关文章

四种java代码静态检查工具

[转载]常用 Java 静态代码分析工具的分析与比较 转载自 开源中国社区 http://www.oschina.net/question/129540_23043 1月16日厦门 OSC 源创会火热报名中,奖品多多哦 »   简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能.特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码

你需要的代码静态检查

使用cppcheck给工程代码做静态检查,主要发现了以下几个问题: 1.使用C风格的类型转换 警告如下: C-style pointer casting detected. C++ offers four different kinds of casts as replacements: static_cast, const_cast, dynamic_cast and reinterpret_cast. A C-style cast could evaluate to any of those

C/C++代码静态检查工具Cppcheck在VS2008开发环境中的安装配置和使用

Cppcheck is an analysis tool for C/C++code. Unlike C/C++ compilers and many other analysis tools, it doesn’t detect syntax errors. Cppcheck only detects the types of bugs that the compilers normally fail to detect. The goal is no false positives. Cpp

JAVA代码静态检测之PMD

今天再次想启动Java代码静态检测工具的利用问题,主要再次尝试用了PMD,发现不少代码编码规范问题和好的代码建议,并学到不少自己之前没有注意到的Java方便的基础知识,感觉很不错,把相关明白的好的规则回忆总结下,再以后编码过程中要把随时利用代码静态检查工具,用好代码静态检查工具养成习惯.今天用到的PMD检查规则如下: If表达式必须使用{},无论有多少语句 While循环必须使用{},无论有多少语句 IfElse表达式必须使用{} For循环语句必须使用{} 如果方法返回boolean,那么注意

React Native工程中TSLint静态检查工具的探索之路

建立的代码规范没人遵守,项目中遍地风格迥异的代码,你会不会抓狂? 通过测试用例的程序还会出现Bug,而原因仅仅是自己犯下的低级错误,你会不会抓狂? 某种代码写法存在问题导致崩溃时,只能全工程检查代码,这需要人工花费大量时间Review代码,你会不会抓狂? 以上这些问题,可以通过静态检查有效地缓解! 静态检查(Static Program Analysis)主要是以不运行程序的方式对于程序源代码进行检查分析的技术,而与之相反的就是动态检查(Dynamic Program Analysis),通过实

动态静态检查

编程语?通常能提供以下三种?动检查的?法: l  静态检查: bug在程序运?前发现 l  动态检查: bug在程序运?中发现 l  ?检查: 编程语?本?不帮助你发现错误,你必须通过特定的条件(例如输出的结果)检查代码的正确性. 静态检查好于动态检查好于不检查. ?客派的编程?格的缺点: 在已经编写?量代码以后才测试它们,将所有的细节都放在脑??, 以为??可以永远记住所有的代码, ?不是将它们编写在代码中,认为 BUG 都不存在或者它们都?常容易发现和被修复. ?程派的优点: ?次只写?点点

静态检查lua语法工具luacheck

关于lua的静态检查工具很多,这里着重介绍两种方法: 1.luac.exe 也就是lua的编译器,安装完lua的编译器之后,将自己的代码进行编译这是最好不过的静态检查,当然编译器由于参数的设置,对很多告警并不敏感.所以推荐第二种方法. 2.luacheck 这是google推出的一款针对lua静态检查的开源工具,其安装简单,操作容易,检查严格,参数可控,很适合项目的lua开发. 工具下载及安装:https://github.com/mpeterv/luacheck 我强烈建议你在linux使用这

Jenkins系列——使用checkstyle进行代码规范检查

1.目标 通过jenkins使用checkstyle对代码进行规范检查并生成html报告. 构建采用shell. 2.环境 checkstyle5.7(如果是Linux版本选用tar.gz格式) apache-ant-1.9.9 ①其他默认环境(如jdk)同前 . ②checkstyle没有选择最新版7.6.1是因为7.6.1版本没有将xml格式的报告转换为html报告的xsl文件. ③ant版本不宜选择太高,因为高版本可能需要JDK8+的支持. ④jenkins checkstyle插件主要是

Jenkins系列——使用checkstyle进行代码规范检查【升级版】

1.背景 在<Jenkins系列——使用checkstyle进行代码规范检查>一文中完成了ant实现代码规范检查的例子.但存在以下缺陷: 每个作业都需要配置一个不同的checkstyle ant脚本,而这个脚本中的多数代码是重复的. 报告采取覆盖方式,而我们有时需要保留一定构建次数的报告. 2.分析 使用变量代替ant脚本中变化的路径,这个变量通过ant命令的 -Dxxx=value 的方式传值. 建立名为${BUILD_NUMBER}的目录,将该次构建成功的报告保留在该目录下. 3.环境 同