代码走读

2024-06-21 17:18
文章标签 代码 走读

本文主要是介绍代码走读,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

                              代码走读原则

一:准备工作

 

  结论(是 / 否)

1:目录层次结构是否遵循标准?

 

2:流程图是否清晰?是否能从流程图判断该模块的结构?

 

3:注释文档是否清晰完全?

 

4readme文档是否遵循标准?

 

5:是否可在模拟器上运行?

 

二:程序结构:

 

  结论(是 / 否)

1:代码是否按照功能模块化?

 

2:标准数据的操作是否单独封装在一个文件,gui解耦?

 

3:配置文件的操作是否单独封装在一个文件,gui解耦?

 

4:涉及的独立的算法是否单独封装在一个文件,gui解耦?

 

5:每个窗口界面是否单独封装在一个文件?

 

6 .c必须用相应的.h给外部引用函数、数据、对象等

 

7:所有代码的结构是否清晰,具有良好的结构外观和整齐?

 

8:所有的模块都定义得很好,包括函数和外部接口?

 

9:每个文件是否只包含一个模块的代码?

 

10:文件的命名是否可以体现出该文件的作用?

 

11:你觉得这个体系结构舒服吗?

 

三:函数检查

 

  结论(是 / 否)

1:函数的名字是否清晰的定义了它的目标以及函数所做的事情?

 

2:函数是否高内聚只做一件事情,并做好?

 

3:函数中的语句是否都在同一个抽象级上?

 

4:函数的参数是否合理,能否尽量控制在3个以内,必要时可以超过3个;

 

5:输出参数是否合理?

 

6: 在保证代码清晰的前提下,函数是否使用了最少数目的return语句,除非不可以?

 

7:是否有重复代码?或者相似的代码可以分离出来?

 

8:你觉得这个函数看起来舒服吗?

 

四:变量

 

  结论(是 / 否)

1:变量的命名是否完全的、明确的描述了该变量代表什么?

 

2:程序是否使用了特别的、易误解的、发音相似的命名?

 

3:是不是所有的变量都有最小的活动范围?

 

五:注释

 

  结论(是 / 否)

1:每个文件和模块是否解释?

 

2:源代码是否自我解释?

 

3:解释是不是仅仅作为代码的重复?解释的过于简单?

 

4:注解是否清楚正确?

 

5:注解是否为读者服务?

 

 

六:资源

 

  结论(是 / 否)

1:IO操作是否释放资源?

 

2:数据库连接是否释放?

 

3:socket连接是否正确关闭?

 

4:内存空间是否出现陡峰?

 

5:连接数是否达到预期要求?

 

6:分配的空间是否会造成系统负荷工作?

 

7:数据库锁是否会被占用导致阻塞?

 

 

七:服务

 

  结论(是 / 否)

1:业务流程是否进行划分?

 

2:服务是否进行拆分?

 

3:服务之间是否紧耦合?

 

4:服务是否具有可扩展性?

 

5:服务是否为分布式服务?

 

6:服务是否有相应的服务文档?

 

7:服务安全性是否有保证?

 

8:服务是否可独立运行?

 

 

八:架构

 

  结论(是 / 否)

1:是否面向接口编程?

 

2:是否是服务型架构?

 

3:数据库是否进行主备备份?

 

4:数据库是否进行读写分离?

 

5:应用层是否设置缓存?

 

6:容错性是否考虑?

 

7:是否可扩展(水平和垂直扩展)?

 

8:是否对系统进行监控?

 

9:是否对高并发进行处理(削峰填谷等措施)?

 

 

这篇关于代码走读的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1081841

相关文章

SpringBoot基于MyBatis-Plus实现Lambda Query查询的示例代码

《SpringBoot基于MyBatis-Plus实现LambdaQuery查询的示例代码》MyBatis-Plus是MyBatis的增强工具,简化了数据库操作,并提高了开发效率,它提供了多种查询方... 目录引言基础环境配置依赖配置(Maven)application.yml 配置表结构设计demo_st

SpringCloud集成AlloyDB的示例代码

《SpringCloud集成AlloyDB的示例代码》AlloyDB是GoogleCloud提供的一种高度可扩展、强性能的关系型数据库服务,它兼容PostgreSQL,并提供了更快的查询性能... 目录1.AlloyDBjavascript是什么?AlloyDB 的工作原理2.搭建测试环境3.代码工程1.

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python

Java中ArrayList的8种浅拷贝方式示例代码

《Java中ArrayList的8种浅拷贝方式示例代码》:本文主要介绍Java中ArrayList的8种浅拷贝方式的相关资料,讲解了Java中ArrayList的浅拷贝概念,并详细分享了八种实现浅... 目录引言什么是浅拷贝?ArrayList 浅拷贝的重要性方法一:使用构造函数方法二:使用 addAll(

JAVA利用顺序表实现“杨辉三角”的思路及代码示例

《JAVA利用顺序表实现“杨辉三角”的思路及代码示例》杨辉三角形是中国古代数学的杰出研究成果之一,是我国北宋数学家贾宪于1050年首先发现并使用的,:本文主要介绍JAVA利用顺序表实现杨辉三角的思... 目录一:“杨辉三角”题目链接二:题解代码:三:题解思路:总结一:“杨辉三角”题目链接题目链接:点击这里

SpringBoot使用注解集成Redis缓存的示例代码

《SpringBoot使用注解集成Redis缓存的示例代码》:本文主要介绍在SpringBoot中使用注解集成Redis缓存的步骤,包括添加依赖、创建相关配置类、需要缓存数据的类(Tes... 目录一、创建 Caching 配置类二、创建需要缓存数据的类三、测试方法Spring Boot 熟悉后,集成一个外

轻松掌握python的dataclass让你的代码更简洁优雅

《轻松掌握python的dataclass让你的代码更简洁优雅》本文总结了几个我在使用Python的dataclass时常用的技巧,dataclass装饰器可以帮助我们简化数据类的定义过程,包括设置默... 目录1. 传统的类定义方式2. dataclass装饰器定义类2.1. 默认值2.2. 隐藏敏感信息

opencv实现像素统计的示例代码

《opencv实现像素统计的示例代码》本文介绍了OpenCV中统计图像像素信息的常用方法和函数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 统计像素值的基本信息2. 统计像素值的直方图3. 统计像素值的总和4. 统计非零像素的数量

IDEA常用插件之代码扫描SonarLint详解

《IDEA常用插件之代码扫描SonarLint详解》SonarLint是一款用于代码扫描的插件,可以帮助查找隐藏的bug,下载并安装插件后,右键点击项目并选择“Analyze”、“Analyzewit... 目录SonajavascriptrLint 查找隐藏的bug下载安装插件扫描代码查看结果总结Sona

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类