`

代码检查的一些注意点

阅读更多

代码自我审查的一些常见注意点:
(0)自认为绝不会出错,并且从来没有审查过的代码。
(1)注意else语句,if条件下的子语句通常可能是个正常的流程,而else意味着异常的情况或者特殊的场景,你可能特别注意怎么处理正常的情况,却忽略了else子句的实现细节,如该释放的锁没释放,该递减的计数没有递减,该赋予特殊值却没有赋予等等。
(2)注意空的方法,没有方法体的方法,是不需要实现?还是忘了实现?
(3)注意switch语句,有没有忘了break?这种错误通过findbugs之类的静态代码检查工具都能避免。
(4)注意大块的注释,为什么这么多注释?是代码写的很糟糕?还是遗留的注释?遗留的注释会误导人,要及时删除。
(5)注意一些看起来“不合常理”的代码,这样的代码很多都是基于所谓性能考虑而优化过的代码,这样的优化是否还需要?是否能去除这些“奇怪”的代码也能实现正常的需求?
(6)对客户端的使用有假设的代码,假设用户只会这么用,假设用户只会用到返回对象中的某些属性,其他属性一定不会用到?不要对客户代码做假设!这个客户代码包括外部用户和调用这个模块的内部代码。
(7)标注了FIXME、TODO之类task标签的代码,是否忘了修复BUG,实现功能?
(8)任何超过15行以上的方法,这些方法是否能拆分成更细粒度的方法,并保持在同一个抽象层次上?
(9)任何在代码中出现的常量值,是否应该提取出来成为单独的常量,常量的默认值设置是否合理?
(10) 任何持有容器的代码,提供了放入容器的方法,是否提供了从容器中移除对象的方法?确保没有内存泄漏的隐患。
(11)重构中提到的其他坏味道,别放过它们,但是也不要追求完美,OO不是圣杯,如果能简单的实现一个算法,你不要引入3个对象和4个接口。
(12)在review最后能列出一张清单,开列下该项目面临的风险点,并提出解决办法,然后按照这张清单去review关键代码,着重检查异常情况下的处理。风险点的review,我建议可以放在后面,在一般性错误解决之后进行,此时你对代码也将再度变的熟悉。

分享到:
评论

相关推荐

    代码检查实例C C++

    在软件开发中,代码检查是保证代码质量、预防错误和提高软件可靠性的重要手段。本文主要讨论的是针对C和C++编程语言的白盒测试,特别是静态白盒测试,即在不实际运行代码的情况下,通过检查设计和源代码来查找潜在...

    代码检查小工具.rar

    在使用TscanCode时,需要注意以下几点: 1. **配置规则**:根据项目的具体需求,可能需要对TscanCode进行相应的配置,定义检查规则,例如忽略某些特定的错误类型。 2. **定期更新**:保持工具的最新版本,以获取...

    sonarqube+sonar-scanner+jenkins执行代码检查.doc

    通过这种方式,整个流程实现了代码检查的自动化,提高了开发效率,确保了代码质量。 总结起来,SonarQube、Sonar-Scanner 和 Jenkins 的集成是实现代码质量管理自动化的重要手段,它们能帮助开发团队发现并解决潜在...

    Gradle平台集成静态代码检查(findbugs,pmd,checkstyle)

    本知识点主要聚焦于如何在Gradle构建平台上集成Findbugs、Checkstyle、PMD这三种流行的静态代码检查工具。 **Gradle平台集成静态代码检查** **1. 静态代码检查工具简介** - **Findbugs**:这是一个分析Java字节码...

    QAC代码检查方案[归纳].pdf

    QAC代码检查方案可以明显地减少代码审查所需的时间,使程序员对他们未完全理解的C/C++/Java语言编程特点多加注意。通过在开发的最初阶段就注意避免编码问题,可以提高代码的质量,测试的周期也将会缩短。 QA C是QAC...

    eladmin自动代码生成步骤以及注意事项.docx

    eladmin自动代码生成步骤以及注意事项 eladmin是一款基于SpringBoot的自动代码生成工具,旨在帮助开发者快速生成前端和后端代码,从而提高开发效率。...但是,需要注意一些重要的注意事项,以免出现错误。

    .NET代码检查工具StyleCop-4.7.54

    StyleCop是一款针对.NET Framework的代码检查工具,它主要用于帮助开发者遵循统一的编码规范,确保代码的可读性和可维护性。这个工具最初由微软开发,但现在已经成为开源项目,社区持续进行更新和维护。在本案例中,...

    FxCop10.0代码检查工具

    FxCop的核心功能在于它能够检查代码中的潜在问题,包括但不限于命名规范、安全性、性能、本地化和设计原则等多方面。通过扫描程序集(编译后的.NET代码),FxCop可以提供详细的报告,指出可能存在的问题和改进建议。...

    安卓代码检查事项

    启动时间() UI层级() 重绘 内存占用 (或对比) 异步任务 (取消操作、回调状态检查)等等

    12代码缺陷检查表示例.pdf

    根据提供的文档信息,我们可以归纳出一份详尽的关于代码缺陷检查表的知识点,特别是针对C/C++编程语言中常见的代码质量问题。以下是对标题、描述以及文档部分内提及的知识点进行的详细阐述: ### 代码缺陷检查表示...

    TFS源代码管理需要注意的几大事项.rar

    对于使用Team Foundation Server (TFS)作为源代码管理工具的团队来说,遵循一些最佳实践至关重要。本文将深入探讨在使用TFS进行源代码管理时应注意的几个重要事项。 首先,"使用TFS进行源代码管理"意味着所有开发...

    华为的代码规范,里面列出了一些编程的注意点

    代码编辑、编译和审查环节,建议使用静态代码分析工具检查潜在问题,并通过代码审查机制来提升代码质量。 测试和维护阶段,规范可能包含对测试覆盖率、回归测试和持续集成的要求,确保代码的稳定性和可靠性。 宏的...

    12、代码缺陷检查表示例1

    本文将深入探讨从标题和描述中提及的几个关键知识点,包括缺省的拷贝构造函数、缺省的赋值函数、派生类与基类的关系,以及C/C++代码缺陷检查的相关内容。 1. 缺省的拷贝构造函数和赋值函数: 当一个类没有自定义...

    java代码检测工具

    10. **过多的静态导入**:过多的静态导入可能导致代码可读性的降低,PMD会提醒开发者注意这一点。 使用PMD进行代码检测时,可以根据项目需求自定义规则集,或者选择预定义的规则集,如基本规则、设计规则、可维护性...

    AMI-BIOS-诊断卡代码

    引导块初始化代码检查点是指在系统启动初期 BIOS 执行的一系列初始化操作中的检查点。这些检查点对于诊断早期硬件问题至关重要。例如,在 CPU 初始化、内存检测等关键步骤中,如果出现问题,可以通过检查点代码来...

    嵌入式系统C代码走查检查单(编程必看).doc

    嵌入式系统C代码走查检查单 嵌入式系统C代码走查检查单是指在编写和维护嵌入式系统C代码时,需要遵守的一系列规范和检查项。这些规范和检查项旨在确保代码的可读性、可维护性和可靠性,避免常见的错误和 Bug。 一...

    C#编写的三子棋游戏源代码及注意事项完整版

    以下是关于C#实现三子棋游戏的一些核心知识点和注意事项: 1. **基本概念**: - **C#基础**:C#是一种面向对象的编程语言,由微软开发,广泛用于开发Windows桌面应用、Web应用以及游戏开发。 - **游戏逻辑**:三...

    单元测试代码走读的一些需要注意的内容

    代码走读是一种审查技术,通过检查代码的各个部分来发现潜在的问题。以下是对这些测试项的详细解释: 1. **J1 下标变量越界**:确保数组或集合的索引不会超出边界,防止引发ArrayIndexOutOfBoundsException。 2. *...

Global site tag (gtag.js) - Google Analytics