Skip to content

Commit cfb9331

Browse files
meta datas
1 parent 3ed3f7e commit cfb9331

64 files changed

Lines changed: 1461 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

TODO_STAGE4.md

Lines changed: 269 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,269 @@
1+
# 阶段 4:内容迁移 - 添加 Frontmatter
2+
3+
## 目标
4+
5+
为现有 86 篇文章添加 YAML frontmatter 元数据,实现标签分类、难度评级、关联推荐等功能。
6+
7+
---
8+
9+
## Frontmatter 模板
10+
11+
```yaml
12+
---
13+
title: "文章标题"
14+
description: "一句话描述"
15+
chapter: X
16+
order: Y
17+
tags:
18+
- 标签1
19+
- 标签2
20+
difficulty: beginner|intermediate|advanced
21+
reading_time_minutes: 10
22+
prerequisites:
23+
- "前置章节"
24+
related:
25+
- "相关文章"
26+
cpp_standard: [11, 14, 17]
27+
---
28+
```
29+
30+
---
31+
32+
## 任务分配(按章节)
33+
34+
### Task 1: Chapter 0 - 前言与基础(6篇)
35+
36+
| 文件 | 标题建议 | 标签 |
37+
|------|----------|------|
38+
| 0前言.md | 前言 | 基础,入门 |
39+
| 1嵌入式的资源与实时约束.md | 嵌入式的资源与实时约束 | 嵌入式,实时性,资源限制 |
40+
| 2急速C语言速通复习.md | C语言速通复习 | C语言,基础语法 |
41+
| 3快速过一下C++98的基本特性.md | C++98基本特性 | C++98,基础 |
42+
| 4何时用C++、用哪些C++特性.md | 何时用C++ | 语言选择,权衡 |
43+
| 5语言选择原则.md | 语言选择原则 | 性能,可维护性 |
44+
| 6学习如何评估程序的性能和体积开销.md | 性能与体积评估 | 性能优化,体积 |
45+
46+
---
47+
48+
### Task 2: Chapter 1 - 构建工具链(3篇)
49+
50+
| 文件 | 标签 |
51+
|------|------|
52+
| 1随意聊下交叉编译和CMake简单指南.md | 交叉编译,CMake,工具链 |
53+
| 2常见编译器选项指南.md | 编译器选项,优化 |
54+
| 3链接器与链接器脚本.md | 链接器,链接脚本 |
55+
56+
---
57+
58+
### Task 3: Chapter 2 - 零开销抽象(4篇)
59+
60+
| 文件 | 标签 |
61+
|------|------|
62+
| 1零开销抽象.md | 零开销抽象,编译器优化 |
63+
| 2内联与编译器优化.md | 内联,优化 |
64+
| 3constexpr.md | constexpr,编译期 |
65+
| 4 CRTP VS 运行时多态.md | CRTP,多态,模板 |
66+
67+
---
68+
69+
### Task 4: Chapter 3 - 内存与对象管理(5篇)
70+
71+
| 文件 | 标签 |
72+
|------|------|
73+
| 1 初始化列表.md | 初始化列表 |
74+
| 2 移动语义.md | 移动语义,右值引用 |
75+
| 3 RVO, NRVO.md | RVO,NRVO,返回值优化 |
76+
| 4 空基类优化(EBO).md | EBO,空基类 |
77+
| 5对象大小,平凡类型.md | 对象大小,平凡类型 |
78+
79+
---
80+
81+
### Task 5: Chapter 5 - 内存管理策略(6篇)
82+
83+
| 文件 | 标签 |
84+
|------|------|
85+
| 1动态分配问题.md | 动态分配,堆 |
86+
| 2静态存储与栈上分配策略.md | 栈,静态存储 |
87+
| 3对象池模式.md | 对象池,模式 |
88+
| 4禁用heap...放置new.md | placement-new |
89+
| 5固定池分配.md | 固定池,分配器 |
90+
| 6array vs 一般数组.md | array,数组 |
91+
92+
---
93+
94+
### Task 6: Chapter 6 - RAII与智能指针(8篇)
95+
96+
| 文件 | 标签 |
97+
|------|------|
98+
| 1 RAII在外设管理的作用.md | RAII,外设管理 |
99+
| 2 unique_ptr.md | unique_ptr,智能指针 |
100+
| 3 shared_ptr.md | shared_ptr,智能指针 |
101+
| 4 unique_ptr、shared_ptr的嵌入式取舍.md | 智能指针,权衡 |
102+
| 5 intrusive智能指针.md | intrusive,智能指针 |
103+
| 6 自定义Deleter.md | deleter,智能指针 |
104+
| 7 引用计数.md | 引用计数 |
105+
| 8 Scope Guard.md | scope_guard,RAII |
106+
107+
---
108+
109+
### Task 7: Chapter 7 - 容器与数据结构(6篇)
110+
111+
| 文件 | 标签 |
112+
|------|------|
113+
| 1 array.md | array,容器 |
114+
| 2 span.md | span,视图 |
115+
| 3 循环缓冲区.md | 循环缓冲区 |
116+
| 4 侵入式容器设计.md | 侵入式容器 |
117+
| 5 ETL.md | ETL,容器库 |
118+
| 6 自定义的分配器.md | 分配器 |
119+
120+
---
121+
122+
### Task 8: Chapter 8 - 类型安全(7篇)
123+
124+
| 文件 | 标签 |
125+
|------|------|
126+
| 1 enum class.md | enum,枚举 |
127+
| 2 类型安全的寄存器访问.md | 寄存器,类型安全 |
128+
| 3 variant.md | variant,类型安全 |
129+
| 4 optional.md | optional,类型安全 |
130+
| 5 expected.md | expected,错误处理 |
131+
| 6 类型别名与using声明.md | using,类型别名 |
132+
| 7 字面量运算符与自定义单位.md | 字面量运算符 |
133+
134+
---
135+
136+
### Task 9: Chapter 9 - 函数式特性(8篇)
137+
138+
| 文件 | 标签 |
139+
|------|------|
140+
| 1 Lambda表达式基础.md | lambda,函数式 |
141+
| 2 Lambda捕获与性能影响.md | lambda,捕获,性能 |
142+
| 3 std function vs 函数指针.md | function,函数指针 |
143+
| 4 回调机制的零开销实现.md | 回调,零开销 |
144+
| 5 std invoke与可调用对象.md | invoke,可调用对象 |
145+
| 6 函数式错误处理模式.md | 函数式,错误处理 |
146+
| 7 C++20范围库基础与视图.md | ranges,视图 |
147+
| 8 管道操作与Ranges实战.md | ranges,管道 |
148+
149+
---
150+
151+
### Task 10: Chapter 10 - 并发与原子(4篇)
152+
153+
| 文件 | 标签 |
154+
|------|------|
155+
| 1 atomic.md | atomic,原子操作 |
156+
| 2 memory_order.md | memory_order,内存序 |
157+
| 3 无锁数据结构设计.md | 无锁,数据结构 |
158+
| 4 mutex与RAII守卫.md | mutex,锁,RAII |
159+
160+
---
161+
162+
### Task 11: 其他模块(~35篇)
163+
164+
- 现代C++特性/
165+
- 现代C++工程实践/
166+
- 深入理解CC++编译特性指南/
167+
- 环境配置/
168+
- 调试专题/
169+
- 并行计算C++/
170+
171+
---
172+
173+
## 操作步骤
174+
175+
### 1. 选择任务
176+
177+
认领一个 Task(如 Task 5: Chapter 6)
178+
179+
### 2. 添加 Frontmatter
180+
181+
在文章开头添加 YAML frontmatter:
182+
183+
```markdown
184+
---
185+
title: "RAII 在外设管理中的作用"
186+
description: "介绍 RAII 模式在嵌入式外设管理中的应用"
187+
chapter: 6
188+
order: 1
189+
tags:
190+
- RAII
191+
- 外设管理
192+
- 资源管理
193+
difficulty: intermediate
194+
reading_time_minutes: 12
195+
prerequisites:
196+
- "Chapter 5: 内存管理策略"
197+
related:
198+
- "Scope Guard"
199+
- "unique_ptr"
200+
cpp_standard: [11, 14, 17]
201+
---
202+
203+
# 嵌入式C++开发——RAII 在驱动 / 外设管理中的应用
204+
...
205+
```
206+
207+
### 3. 验证
208+
209+
```bash
210+
python3 scripts/validate_frontmatter.py
211+
```
212+
213+
### 4. 提交
214+
215+
```bash
216+
git add .
217+
git commit -m "stage4: 添加 Chapter X frontmatter"
218+
git push
219+
```
220+
221+
---
222+
223+
## 标签分类参考
224+
225+
| 类别 | 标签 |
226+
|------|------|
227+
| 概念 | RAII, 移动语义, 零开销抽象, 编译期计算 |
228+
| 语言特性 | constexpr, lambda, CRTP, concepts, coroutine |
229+
| 智能指针 | unique_ptr, shared_ptr, weak_ptr, intrusive_ptr |
230+
| 容器 | array, span, vector, map, 循环缓冲区 |
231+
| 类型安全 | enum, variant, optional, expected |
232+
| 函数式 | function, lambda, ranges, invoke |
233+
| 并发 | atomic, mutex, memory_order, 无锁 |
234+
| 工具链 | CMake, 链接器, 编译器选项 |
235+
236+
---
237+
238+
## 进度追踪
239+
240+
| Task | 章节 | 负责人 | 状态 |
241+
|------|------|--------|------|
242+
| 1 | Chapter 0 (6篇) | | ⏸️ 待分配 |
243+
| 2 | Chapter 1 (3篇) | | ⏸️ 待分配 |
244+
| 3 | Chapter 2 (4篇) | | ⏸️ 待分配 |
245+
| 4 | Chapter 3 (5篇) | | ⏸️ 待分配 |
246+
| 5 | Chapter 5 (6篇) | | ⏸️ 待分配 |
247+
| 6 | Chapter 6 (8篇) | | ⏸️ 待分配 |
248+
| 7 | Chapter 7 (6篇) | | ⏸️ 待分配 |
249+
| 8 | Chapter 8 (7篇) | | ⏸️ 待分配 |
250+
| 9 | Chapter 9 (8篇) | | ⏸️ 待分配 |
251+
| 10 | Chapter 10 (4篇) | | ⏸️ 待分配 |
252+
| 11 | 其他模块 (~35篇) | | ⏸️ 待分配 |
253+
254+
---
255+
256+
## 建议分工
257+
258+
- **10 人协作**:每人负责 1 个 Task
259+
- **5 人协作**:每人负责 2 个 Task
260+
- **预计时间**:每人 1-2 小时
261+
262+
---
263+
264+
## 完成标准
265+
266+
- [ ] 所有文章包含 frontmatter
267+
- [ ] `validate_frontmatter.py` 无错误
268+
- [ ] 标签使用规范分类
269+
- [ ] 难度评级合理

0 commit comments

Comments
 (0)