Skip to content

Commit 8ee7910

Browse files
author
liuyangyang
committed
delete and replace
1 parent 7eb67f2 commit 8ee7910

File tree

2 files changed

+52
-99
lines changed

2 files changed

+52
-99
lines changed

CLAUDE.md

Lines changed: 52 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,58 @@
11
# CLAUDE.md
22

3-
这个文件为 Claude Code (claude.ai/code) 在此代码仓库中工作时提供指导。
3+
# 任何项目都务必遵守的规则(极其重要!!!)
4+
## Communication
5+
- 永远使用简体中文进行思考和对话
6+
7+
## Documentation
8+
- 编写 .md 文档时,也要用中文
9+
- 正式文档写到项目的 docs/ 目录下
10+
- 用于讨论和评审的计划、方案等文档,写到项目的 discuss/ 目录下
11+
12+
## Code Architecture
13+
- 代码必须简单清晰,易于理解
14+
- 编写代码的硬性指标,包括以下原则:
15+
(1)对于 Python 等动态语言,尽可能确保每个代码文件不要超过 300 行
16+
(2)对于 C++ 、C 等静态语言,尽可能确保每个代码文件不要超过 400 行
17+
(3)每层文件夹中的文件,尽可能不超过 8 个。如有超过,需要规划为多层子文件夹
18+
- 除了硬性指标以外,还需要时刻关注优雅的架构设计,避免出现以下可能侵蚀我们代码质量的「坏味道」:
19+
(1)僵化 (Rigidity): 系统难以变更,任何微小的改动都会引发一连串的连锁修改。
20+
(2)冗余 (Redundancy): 同样的代码逻辑在多处重复出现,导致维护困难且容易产生不一致。
21+
(3)循环依赖 (Circular Dependency): 两个或多个模块互相纠缠,形成无法解耦的“死结”,导致难以测试与复用。
22+
(4)脆弱性 (Fragility): 对代码一处的修改,导致了系统中其他看似无关部分功能的意外损坏。
23+
(5)晦涩性 (Obscurity): 代码意图不明,结构混乱,导致阅读者难以理解其功能和设计。
24+
(6)数据泥团 (Data Clump): 多个数据项总是一起出现在不同方法的参数中,暗示着它们应该被组合成一个独立的对象。
25+
(7)不必要的复杂性 (Needless Complexity): 用“杀牛刀”去解决“杀鸡”的问题,过度设计使系统变得臃肿且难以理解。
26+
- 【非常重要!!】无论是你自己编写代码,还是阅读或审核他人代码时,都要严格遵守上述硬性指标,以及时刻关注优雅的架构设计。
27+
- 【非常重要!!】无论何时,一旦你识别出那些可能侵蚀我们代码质量的「坏味道」,都应当立即询问用户是否需要优化,并给出合理的优化建议。
28+
29+
30+
## Run & Debug
31+
- 必须首先在项目的 scripts/ 目录下,维护好 Run & Debug 需要用到的全部 .sh 脚本
32+
- 对于所有 Run & Debug 操作,一律使用 scripts/ 目录下的 .sh 脚本进行启停。永远不要直接使用 npm、pnpm、uv、python 等等命令
33+
- 如果 .sh 脚本执行失败,无论是 .sh 本身的问题还是其他代码问题,需要先紧急修复。然后仍然坚持用 .sh 脚本进行启停
34+
- Run & Debug 之前,为所有项目配置 Logger with File Output,并统一输出到 logs/ 目录下
35+
36+
## Python
37+
- 数据结构尽可能全部定义成强类型。如果个别场景不得不使用未经结构化定义的 dict,需要先停下来征求用户的同意
38+
- Python 虚拟环境永远使用 .venv 作为目录名
39+
- 必须使用 uv,而不是 pip、poetry、conda、python3、python。包括依赖管理、构建、调试启动等所有环节
40+
- 项目的根目录必须保持简洁,只保留必须存在的文件
41+
- main.py 内容也要简洁。只保留必须存在的代码
42+
- 每一个.py文件都必须包含一个Main函数,用于测试当前文件是否能正常运行。
43+
44+
## C++
45+
- 代码风格遵循 Google C++ Style Guide
46+
-
47+
## 依赖
48+
49+
## 输出
50+
- 输出内容必须使用简体中文
51+
- 输出PROJECT_STATUS.md 必须包含项目的主要功能、特性、优势、局限性等信息.包括每次更新的主要变化、优化点、新功能等。
52+
453

5-
## 项目概述
654

55+
## 项目概述
756
SimpleSensorSync 是一个为机器人和传感器融合系统设计的多传感器同步解决方案。它使用专用同步板为相机、激光雷达、IMU 和 GPS 等各种传感器提供精确的时间协调。
857

958
## 架构
@@ -98,4 +147,4 @@ cd build/tools/monitor
98147
- 主要厂商的工业相机 (PWM 同步)
99148
- 3D 激光雷达传感器 (PPS 同步)
100149
- IMU 设备 (PWM 同步)
101-
- GPS/RTK 系统 (NMEA 同步)
150+
- GPS/RTK 系统 (NMEA 同步)

python/infinite_sense_core/app.py

Lines changed: 0 additions & 96 deletions
This file was deleted.

0 commit comments

Comments
 (0)