联系我们

嘉兴市佳海路53号

电话:86 0769 81773832
手机:18029188890
联系人:李芳 女士

公司新闻

> 凯时KB88平台登陆官网 >

代码检查入门基础

日期:2011-5-10 9:37:39 人气: 时间:2024-03-05 06:10 来源:未知 作者:admin

  

  【摘要】 代码检查中,提到的编程规范,规则集凯时KB88平台登陆官网凯时KB88平台登陆官网,规则,规则用例(场景、误报凯时KB88平台登陆官网、检出)分别代表什么意思呢?

  在SAST静态检查领域,代码检查服务可以帮助开发者发现和修复代码中的风格、质量和安全等方面的问题。那么在代码检查服务中,提到的编程规范,规则集,规则,规则用例(场景、误报凯时KB88平台登陆官网凯时KB88平台登陆官网、检出)分别代表什么意思呢?

  在SAST静态代码检查领域,编程规范是一套在组织层面关于代码编写的标准或准则。它可以帮助开发者遵循一致的风格和习惯,提高代码的可读性、可维护性、可移植性、安全性与可靠性,目的在于指导公司、部门凯时KB88平台登陆官网、项目组编写出Clean Code及高质量的软件。

  编程规范通常会参考业界标准及实践,并包含命名凯时KB88平台登陆官网、缩进、注释、格式等方面的内容,业界内比较有名的有华为编程规范凯时KB88平台登陆官网。

  编程规范内的规则通常被用于在特定场景下使用凯时KB88平台登陆官网,检测出代码中的漏洞和缺陷。但是这些规则并非就是万能完美的凯时KB88平台登陆官网,在一些场景下,可能会导致误报率凯时KB88平台登陆官网、漏报率高的情况发生。如果在日常使用中发现某些规则不适合或者无法遵循,经过团队共同研讨决策,是可以对规范中的规则进行改进甚至下线处理的。

  注意,团队内在使用编程规范的时候,是希望团队成员都具有相应语言的基础编程能力,而不是说希望通过编程规范来学习某个具体的语言。

  一般根据不同的检查目标和需求凯时KB88平台登陆官网,规则集也有相应的分类,比如对安全类、安卓应用、编程风格这些类别进行检查的时候,规则集内的规则也会有不同的选择。

  规则集可以应用在不同的范围上凯时KB88平台登陆官网,比如:公司最小规则集可以在全公司范围内使用,产品线规则集则可以在最小规则集的基础上再额外加些产品线特有的规则进去,构建一个范围更大的产品线级规则集。

  规则集也可以在不同的阶段使用。比如针对本地IDE编码阶段,可以构建一个IDE插件检查规则集在本地实时进行检查凯时KB88平台登陆官网。在提交增量代码阶段,使用一个更大范围的规则集对增量代码进行自动化检查凯时KB88平台登陆官网凯时KB88平台登陆官网。在要进行版本级扫描阶段,与流水线协同提供全面、深度的全量检查。

  规则是一种用来指导和约束代码检查的标准和准则。它可以根据不同的编程语言、编码规范、质量要求等因素来制定。每个规则可以说都定义了一个缺陷模式,当该模式在目标代码中匹配成功后会生成一个检查问题。

  每个规则都会包含一个ID和一个操作。ID可以说是规则唯一的标识符,用于区分不同的规则;操作则用于指定改规则在代码检查期间应该执行的动作凯时KB88平台登陆官网,比如告警等。

  规则一般会包含描述信息(包含编写这条规则的背景等)、正确的代码示例、错误的代码示例、修复建议、参考的规范等信息凯时KB88平台登陆官网。

  规则用例是一种用于验证代码检查规则是否按照预期正确工作的测试用例凯时KB88平台登陆官网。一般它会包括一个或多个测试输入(代码片段),执行条件以及预期的检查结果(包括是否有问题,问题的类型,问题的位置等)。

  规则用例可以说是检验和验证规则的一种手段,可以帮助开发人员和测试人员评估代码检查规则的有效性、准确性和覆盖性。

  场景是一种描述代码检查规则应用的具体情况或背景的方法,它可以说是规则用例的集合(包含1个或多个规则用例)以及一些相关的信息(项目类型、编程语言、编码规范等)的结合。场景可以比规则用例更全面的模拟代码检查规则的使用场景。

  误报是指代码检查服务错误地报告了一个不存在的问题或一个错误的问题类型的状况凯时KB88平台登陆官网。误报一般是由于代码检查规则的设计缺陷凯时KB88平台登陆官网、实现错误凯时KB88平台登陆官网、使用场景不匹配或配置不当等原因造成的凯时KB88平台登陆官网,会导致开发人员和测试人员对代码检查服务的信任度降低。

  检出则和误报完全相反,是个好的现象,是指代码检查服务正确地报告了一个确实存在的问题及正确的问题类型的状况。检出高可以帮助开发人员预防和修复潜在的缺陷。