docs: 优化开发规则与项目介绍文档的表述

- 移除关于禁止修改源代码的临时限制说明,该限制已不再适用
- 统一并优化多处中文标点与空格的格式,使文档更整洁
- 调整项目介绍中关于协议设计的表述,使其更清晰准确
- 合并`tracer-type.md`中的分隔线,使列表结构更紧凑
This commit is contained in:
2026-03-02 21:06:36 +08:00
parent 19d4b97669
commit 2dfc4ced67
3 changed files with 5 additions and 9 deletions

View File

@@ -1,7 +1,6 @@
# 开发规则
- **严禁主动修改任何项目源代码文件(如 .ts, .js, .c, .h 等)。当前工作仅限于文档编写(.md和方案讨论。所有代码示例仅能在对话中展示不得写入文件。**
- 在考虑API的移植性时需要特别考虑C语言当然各类主流的编程语言要需要纳入考虑范围包括但不限于
- 在设计协议和API时我们需要考虑API的移植性尤其需要特别关注C语言因为C语言的语法表达力不算强。当然各类主流的编程语言都需要纳入考虑范围包括但不限于
- C++
- Java
- C#

View File

@@ -6,7 +6,7 @@
基于上述设想,我肯定无法接受从编译技术的角度去适配每一种编程语言(例如代码插桩甚至改造编译器),因为这会导致平台的开发变得非常复杂,维护成本也会非常高。因此我的想法是设计一套语言无关的协议,用来描述各种数据结构的变化(跟踪器),因此这套协议会定义需要支持的数据结构类型,以及每一种数据结构类型需要支持的操作指令,并且我倾向于将指令设计得更加“底层”一些,类似于“原语”的概念。
> 例如针对顺序表结构,我可能会定义 pick(获取元素)、drop(取消获取)、patch(修改元素) 指令来替代 swap(交换元素) 操作,因为交换两个元素的本质就是 获取元素 + 修改元素,而我在其中添加 drop 指令的目的则是使可视化过程更加具体,例如 pick 指令会将其选定的元素高亮,那么 drop 指令就可以取消该元素的高亮行为。
> 例如针对顺序表结构我可能会定义pick(获取元素)、drop(取消获取)、patch(修改元素)指令来替代swap(交换元素)操作,因为交换两个元素的本质就是获取元素+修改元素而我在其中添加rop指令的目的则是使可视化过程更加具体例如pick指令会将其选定的元素高亮那么drop指令就可以取消该元素的高亮行为。
我们会先选取一种编程语言(例如TypeScript)来实现这套协议,在实现的过程中,需要考虑到未来将添加其他编程语言的支持,因此需要考虑到不同编程语言之间的差异,例如语法/类型系统差异,进而反过来优化这套协议,以使其能够更好地支持不同的编程语言,这是一个双向的过程。

View File

@@ -12,8 +12,5 @@ Tracer 代表一个数据结构变化的跟踪器,用户可以通过调用 Tra
- LinkTracer: 链表
- TreeTracer: 树
- GraphTracer: 图
---
- LogTracer: 日志
- ControlTracer: 控制