Skip to content

Commit 002fb77

Browse files
committed
从数据库中获取
1 parent faa8e95 commit 002fb77

File tree

9 files changed

+558
-6
lines changed

9 files changed

+558
-6
lines changed

.idea/caches/deviceStreaming.xml

Lines changed: 340 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/material_theme_project_new.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/swiftdo.github.io.iml

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/workspace.xml

Lines changed: 50 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/.vuepress/config/navConf.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,10 @@ module.exports = [
100100
text: "Figma",
101101
link: "/figma/",
102102
},
103+
{
104+
text: "Code Review",
105+
link: "/tools/code-review"
106+
},
103107
{
104108
text: "docsify",
105109
link: "/tools/docsify"

docs/ops/sonarqube-plugin.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,3 @@ $ docker compose up -d
108108

109109

110110

111-
112-
113-
114-
115-
116-

docs/tools/code-review.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
---
2+
title: '代码评审'
3+
sitemap:
4+
exclude: false
5+
changefreq: hourly
6+
date: 2024-12-20
7+
tags:
8+
- code
9+
- review
10+
---
11+
12+
代码走查(Code Review)是软件开发中的一种重要实践,它旨在通过团队成员间的相互检查,提高代码质量、可维护性和一致性。代码走查的主要目标是发现和解决潜在问题、提升代码质量,确保代码符合项目要求和开发标准。以下是代码走查的主要任务和如何进行:
13+
14+
主要分为 5 部分:
15+
16+
自动处理:
17+
- 代码规范
18+
- 测试
19+
20+
重点关注:
21+
- 文档
22+
- 实现
23+
- API
24+
25+
## 自动处理
26+
27+
### 代码规范
28+
29+
- 是否应用了项目的格式样式?
30+
- 它是否遵守商定的命名约定?
31+
- 是否 DRY? 确保代码结构清晰,避免重复代码。
32+
- 代码是否足够“可读”(方法长度等)
33+
34+
### 测试
35+
36+
- 所有测试都通过了吗?
37+
- 新功能是否经过合理测试?
38+
- 是否测试了极端情况?
39+
- 是否尽可能使用单元测试,必要时使用集成测试?
40+
- 是否有针对 NFR 的测试,例如性能?
41+
42+
## 重点关注
43+
44+
### 文档
45+
- 新功能是否有合理的说明?
46+
- 是否涵盖所有相关类型的文档,例如自述文件、API 文档、用户指南、参考文档等?
47+
- 文档是否易于理解并且没有明显的拼写错误和语法错误?
48+
49+
### 实现
50+
- 是否满足原来的要求?
51+
- 逻辑上正确吗?
52+
- 没有不必要的复杂性吗?
53+
- 它是否健壮(即没有并发问题、正确的错误处理等)?
54+
- 性能好吗?
55+
- 它安全吗(即没有 SQL 注入等)?
56+
- 它是否可观察(即指标、日志记录、跟踪等)?
57+
- 新添加的依赖项是否发挥作用?他们的许可证可以接受吗?
58+
59+
### API
60+
61+
- API 越小越好,需要多大就多大?
62+
- 是否有一种方法可以做一件事,而不是多种方法?
63+
- 是否一致,是否遵循最小意外原则?
64+
- API/内部结构的干净分割,没有内部结构泄漏到 API 中?
65+
- 面向用户的部分(API 类、配置、指标、日志格式等)是否没有重大变化?
66+
- 新的 API 是否普遍有用且不会过于特定于单个用例?
67+
68+
---------
69+
70+
## 主要任务
71+
1. **代码质量检查**
72+
- 检查代码的清晰性、简洁性和可读性。
73+
- 确保命名规范一致,变量、函数和类名符合项目的命名标准。
74+
- 确保代码结构清晰,避免重复代码,尽量符合DRY(Don't Repeat Yourself)原则。
75+
76+
2. **功能正确性**
77+
- 确保代码实现了预期的功能,并且没有逻辑错误。
78+
- 测试代码是否通过现有的单元测试,是否覆盖了所有关键的功能点。
79+
80+
3. **性能考虑**
81+
- 检查代码是否有性能瓶颈,如不必要的循环、重复计算或过度的资源消耗。
82+
- 检查数据结构和算法的选择,确保在合理范围内优化性能。
83+
84+
4. **错误处理**
85+
- 确保所有可能的异常和错误都有适当的处理。
86+
- 检查代码是否处理了所有的边界情况和异常情况,避免未处理的错误。
87+
88+
5. **安全性**
89+
- 检查是否有安全漏洞,如SQL注入、XSS等。
90+
- 确保敏感数据(如密码、API密钥)得到妥善保护。
91+
92+
6. **可维护性与扩展性**
93+
- 代码是否容易理解,是否易于修改和扩展。
94+
- 是否遵循了设计模式和架构原则,使得代码在未来能够适应更改。
95+
96+
7. **依赖管理**
97+
- 确保没有不必要的外部依赖,减少不必要的库引用。
98+
- 检查是否有过时或已废弃的依赖。
99+
100+
8. **文档与注释**
101+
- 确保函数、类和复杂逻辑部分有清晰的注释,说明代码的意图和功能。
102+
- 确保文档更新与代码变更同步。
103+
104+
## 如何进行代码走查
105+
1. **准备阶段**
106+
- 提交者准备好代码,标明需要检查的部分和关注点。
107+
- 确保代码已经通过基本的单元测试,并且没有重大 bug。
108+
109+
2. **分配任务**
110+
- 确定谁来进行代码走查。通常选择有经验的开发人员或对该模块有一定了解的人。
111+
112+
3. **代码审查**
113+
- 审查人员逐行检查代码,提出建议或指出问题。
114+
- 确保提出的反馈是具体的、可操作的,而不是仅仅提出问题。
115+
116+
4. **讨论与修改**
117+
- 对代码审查中发现的问题进行讨论,确保提出的修改方案可行。
118+
- 提交者根据审查反馈修改代码。
119+
120+
5. **验证与确认**
121+
- 经过修改后,再次进行验证,确保修改解决了问题且没有引入新问题。
122+
- 审查人员确认代码的修改符合要求,并进行最终批准。
123+
124+
6. **文档和总结**
125+
- 记录审查过程中的主要问题和讨论的改进措施。
126+
- 可以根据审查结果对团队的开发规范进行总结和改进。
127+
128+
代码走查不仅有助于提高代码质量,还能促进团队成员之间的知识共享和沟通。

0 commit comments

Comments
 (0)