mirror of
https://github.com/tradecatlabs/vibe-coding-cn.git
synced 2026-07-27 18:57:50 +00:00
docs: fundamentals - classify low-level optimization checklist
This commit is contained in:
@@ -30,14 +30,15 @@ assets/documents/
|
||||
1. **问题** → [问题求解能力](./principles/fundamentals/问题求解能力.md)
|
||||
2. **工程** → [问题分析与系统构建方法](./principles/fundamentals/问题分析与系统构建方法.md)
|
||||
3. **范式** → [软件开发范式演进](./principles/fundamentals/软件开发范式演进.md)
|
||||
4. **思维** → [philosophy](./principles/philosophy/README.md)
|
||||
5. **理念** → [胶水编程](./principles/fundamentals/胶水编程.md)
|
||||
6. **入门** → [Vibe Coding 哲学原理](./guides/getting-started/Vibe%20Coding%20哲学原理.md)
|
||||
7. **配置** → [开发环境搭建](./guides/getting-started/开发环境搭建.md)
|
||||
8. **工具** → [tmux 快捷键](./guides/playbook/tmux快捷键大全.md)
|
||||
9. **远程** → [VS Code Remote Tunnel(WSL)](./guides/playbook/REMOTE_TUNNEL_GUIDE.md)
|
||||
10. **实践** → [项目实战经验](./case-studies/)
|
||||
11. **流程** → [工作流模板](./workflow/)
|
||||
4. **底层** → [底层程序逻辑设计与工程优化项](./principles/fundamentals/底层程序逻辑设计与工程优化项.md)
|
||||
5. **思维** → [philosophy](./principles/philosophy/README.md)
|
||||
6. **理念** → [胶水编程](./principles/fundamentals/胶水编程.md)
|
||||
7. **入门** → [Vibe Coding 哲学原理](./guides/getting-started/Vibe%20Coding%20哲学原理.md)
|
||||
8. **配置** → [开发环境搭建](./guides/getting-started/开发环境搭建.md)
|
||||
9. **工具** → [tmux 快捷键](./guides/playbook/tmux快捷键大全.md)
|
||||
10. **远程** → [VS Code Remote Tunnel(WSL)](./guides/playbook/REMOTE_TUNNEL_GUIDE.md)
|
||||
11. **实践** → [项目实战经验](./case-studies/)
|
||||
12. **流程** → [工作流模板](./workflow/)
|
||||
|
||||
## 🔗 相关资源
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
- [问题求解能力](./问题求解能力.md) - 目标、现状、差距、标准与反馈迭代的底层能力
|
||||
- [问题分析与系统构建方法](./问题分析与系统构建方法.md) - 自顶向下、自底向上与分而治之的组合使用
|
||||
- [软件开发范式演进](./软件开发范式演进.md) - 从面向过程到云原生的工程组织方式演进
|
||||
- [底层程序逻辑设计与工程优化项](./底层程序逻辑设计与工程优化项.md) - CPU、内存、并发、IO、网络、数据结构与交付优化检查项
|
||||
|
||||
### 提示词工程
|
||||
- [系统提示词构建原则](./系统提示词构建原则.md) - 构建高效 AI 系统提示词
|
||||
|
||||
@@ -0,0 +1,573 @@
|
||||
# 底层程序逻辑设计与工程优化项
|
||||
|
||||
CPU
|
||||
事务
|
||||
缓存
|
||||
并发
|
||||
内存
|
||||
IO
|
||||
网络
|
||||
数据结构
|
||||
算法
|
||||
抽象
|
||||
接口
|
||||
函数
|
||||
递归
|
||||
循环
|
||||
条件分支
|
||||
顺序性
|
||||
副作用
|
||||
状态
|
||||
数据流
|
||||
控制流
|
||||
进程模型
|
||||
线程模型
|
||||
协程模型
|
||||
用户态线程 vs 内核线程
|
||||
同步模型
|
||||
异步模型
|
||||
事件驱动模型
|
||||
批处理模型
|
||||
流式处理模型
|
||||
计算模型
|
||||
调度模型
|
||||
内存模型
|
||||
并发模型
|
||||
数据模型
|
||||
状态模型
|
||||
错误模型
|
||||
性能模型
|
||||
成本模型
|
||||
容量模型
|
||||
CPU cache 友好设计
|
||||
CPU 使用优化
|
||||
CPU 亲和性
|
||||
上下文切换成本
|
||||
分支预测意识
|
||||
分支预测友好设计
|
||||
流水线友好设计
|
||||
指令级并行意识
|
||||
SIMD 思维
|
||||
向量化计算
|
||||
GPU 计算设计
|
||||
GPU 内存访问优化
|
||||
算子融合
|
||||
计算图优化
|
||||
数值稳定性设计
|
||||
浮点误差控制
|
||||
近似计算
|
||||
增量计算
|
||||
重复计算消除
|
||||
预计算与查表
|
||||
延迟计算
|
||||
懒加载
|
||||
即时计算 vs 预计算
|
||||
本地计算 vs 远程调用
|
||||
计算复杂度优化
|
||||
时间复杂度优化
|
||||
空间复杂度优化
|
||||
空间换时间设计
|
||||
数据局部性优化
|
||||
内存访问优化
|
||||
内存分配优化
|
||||
栈/堆使用判断
|
||||
逃逸分析意识
|
||||
GC 友好设计
|
||||
JIT/解释执行理解
|
||||
内联优化意识
|
||||
对象生命周期设计
|
||||
内存生命周期管理
|
||||
内存泄漏控制
|
||||
内存碎片控制
|
||||
堆外内存管理
|
||||
引用计数
|
||||
弱引用
|
||||
内存对齐
|
||||
结构体 padding
|
||||
TLB 命中率意识
|
||||
页缓存理解
|
||||
缺页中断意识
|
||||
内存分页
|
||||
NUMA 感知设计
|
||||
内存屏障理解
|
||||
happens-before 关系
|
||||
可见性
|
||||
有序性
|
||||
原子性
|
||||
false sharing 避免
|
||||
原子操作与 CAS
|
||||
ABA 问题
|
||||
锁粒度设计
|
||||
锁竞争优化
|
||||
读写锁适用性
|
||||
可重入锁风险
|
||||
锁顺序约束
|
||||
无锁数据结构
|
||||
锁自由设计
|
||||
等待自由设计
|
||||
死锁
|
||||
活锁
|
||||
饥饿
|
||||
优先级反转
|
||||
条件变量
|
||||
信号量
|
||||
屏障同步
|
||||
并发安全设计
|
||||
并发正确性设计
|
||||
并发测试
|
||||
竞态检测
|
||||
任务拆分策略
|
||||
工作队列设计
|
||||
优先级调度
|
||||
调度公平性
|
||||
线程池设计
|
||||
线程池饱和处理
|
||||
队列积压处理
|
||||
背压机制
|
||||
超时传播
|
||||
取消传播
|
||||
异步上下文传播
|
||||
异步异常处理
|
||||
同步/异步边界设计
|
||||
阻塞式等待识别
|
||||
阻塞 IO
|
||||
非阻塞 IO
|
||||
IO 多路复用
|
||||
select / poll / epoll / kqueue
|
||||
io_uring 理解
|
||||
Reactor 模型
|
||||
Proactor 模型
|
||||
事件循环设计
|
||||
事件队列设计
|
||||
事件优先级
|
||||
事件饥饿
|
||||
系统调用成本意识
|
||||
文件描述符管理
|
||||
句柄泄漏控制
|
||||
资源释放
|
||||
资源隔离
|
||||
资源配额
|
||||
资源池化
|
||||
对象池设计
|
||||
连接池设计
|
||||
缓冲区设计
|
||||
零拷贝思路
|
||||
DMA 理解
|
||||
mmap 使用判断
|
||||
sendfile 使用判断
|
||||
IO 合并
|
||||
批处理与合并请求
|
||||
网络调用优化
|
||||
DNS 解析成本
|
||||
DNS 缓存策略
|
||||
TCP 连接建立成本
|
||||
TCP 慢启动
|
||||
TCP 拥塞控制
|
||||
Nagle 算法影响
|
||||
KeepAlive 策略
|
||||
连接复用
|
||||
连接泄漏控制
|
||||
Socket buffer 调优
|
||||
HTTP/1.1 vs HTTP/2 vs HTTP/3
|
||||
TLS 握手成本
|
||||
证书校验成本
|
||||
长连接管理
|
||||
半开连接处理
|
||||
请求队头阻塞
|
||||
网络超时设计
|
||||
网络抖动处理
|
||||
网络分区处理
|
||||
MTU / 分片意识
|
||||
带宽与延迟权衡
|
||||
序列化优化
|
||||
反序列化成本控制
|
||||
压缩策略选择
|
||||
压缩率 vs CPU 成本权衡
|
||||
数据编码选择
|
||||
数据格式选择
|
||||
Schema 设计
|
||||
Schema 演进
|
||||
字段兼容性
|
||||
枚举扩展风险
|
||||
默认值策略
|
||||
数据结构选择
|
||||
缓存结构选择
|
||||
队列与堆选择
|
||||
索引结构选择
|
||||
概率数据结构
|
||||
布隆过滤器
|
||||
HyperLogLog
|
||||
Count-Min Sketch
|
||||
LRU / LFU / FIFO 选择
|
||||
树结构选择
|
||||
哈希结构选择
|
||||
跳表选择
|
||||
B+Tree 理解
|
||||
LSM Tree 理解
|
||||
图结构建模
|
||||
排序策略选择
|
||||
查找策略选择
|
||||
贪心策略判断
|
||||
动态规划建模
|
||||
图算法选择
|
||||
分治策略选择
|
||||
回溯策略选择
|
||||
启发式算法选择
|
||||
算法策略选择
|
||||
算法稳定性
|
||||
算法可解释性
|
||||
循环结构优化
|
||||
递归深度控制
|
||||
尾递归优化判断
|
||||
无边界递归避免
|
||||
数据预聚合
|
||||
数据分片与分区
|
||||
数据倾斜处理
|
||||
MapReduce 思维
|
||||
并行计算设计
|
||||
批处理设计
|
||||
流式处理设计
|
||||
冷热路径拆分
|
||||
冷路径隔离
|
||||
热路径优化
|
||||
性能瓶颈识别
|
||||
性能指标定义
|
||||
Profiling 能力
|
||||
火焰图分析
|
||||
慢查询分析
|
||||
Trace 分析
|
||||
日志埋点设计
|
||||
结构化日志
|
||||
日志等级设计
|
||||
Trace ID 传播
|
||||
Span 设计
|
||||
Metrics 设计
|
||||
高基数指标控制
|
||||
Dashboard 设计
|
||||
告警规则设计
|
||||
告警降噪
|
||||
SLO / SLA / SLI
|
||||
错误预算
|
||||
黑盒监控
|
||||
白盒监控
|
||||
用户体验监控
|
||||
业务指标监控
|
||||
容量水位监控
|
||||
Benchmark 设计
|
||||
压测设计
|
||||
容量评估
|
||||
峰值流量模型
|
||||
流量预测
|
||||
性能回归测试
|
||||
优化验证
|
||||
优化收益评估
|
||||
优化 ROI 评估
|
||||
过早优化识别
|
||||
伪优化识别
|
||||
缓存层级设计
|
||||
分层缓存
|
||||
本地缓存
|
||||
分布式缓存
|
||||
页面缓存
|
||||
对象缓存
|
||||
查询缓存
|
||||
结果复用
|
||||
缓存对象选择
|
||||
缓存 key 设计
|
||||
缓存一致性
|
||||
缓存失效策略
|
||||
缓存淘汰策略
|
||||
缓存预热机制
|
||||
缓存穿透处理
|
||||
缓存击穿处理
|
||||
缓存雪崩处理
|
||||
热点缓存处理
|
||||
缓存污染控制
|
||||
缓存容量控制
|
||||
缓存命中率评估
|
||||
数据访问优化
|
||||
数据访问方式选择
|
||||
数据访问路径设计
|
||||
查询路径设计
|
||||
写入路径优化
|
||||
索引设计
|
||||
覆盖索引
|
||||
索引下推
|
||||
回表成本控制
|
||||
分页优化
|
||||
游标分页
|
||||
N+1 查询消除
|
||||
查询计划理解
|
||||
执行计划稳定性
|
||||
统计信息维护
|
||||
慢查询治理
|
||||
锁等待分析
|
||||
死锁分析
|
||||
事务范围控制
|
||||
事务边界
|
||||
事务隔离级别
|
||||
MVCC 理解
|
||||
WAL 理解
|
||||
Redo / Undo 日志
|
||||
Checkpoint
|
||||
Buffer Pool
|
||||
页分裂控制
|
||||
Compaction
|
||||
分区裁剪
|
||||
分库分表
|
||||
读写分离
|
||||
冷热数据分层
|
||||
数据归档
|
||||
TTL 策略
|
||||
CDC 变更捕获
|
||||
数据回放
|
||||
数据修复
|
||||
数据血缘
|
||||
数据质量校验
|
||||
范式化 vs 反范式化
|
||||
数据冗余与同步
|
||||
热点数据处理
|
||||
数据生命周期设计
|
||||
数据流路径设计
|
||||
数据转换链路设计与优化
|
||||
数据校验位置
|
||||
数据一致性设计
|
||||
顺序性与版本控制
|
||||
版本冲突解决
|
||||
逻辑时钟
|
||||
向量时钟
|
||||
时钟偏移处理
|
||||
读己之写
|
||||
单调读
|
||||
强一致性
|
||||
最终一致性
|
||||
CAP 理解
|
||||
PACELC 理解
|
||||
分布式事务
|
||||
Saga 模式
|
||||
TCC 模式
|
||||
Outbox 模式
|
||||
Inbox 模式
|
||||
幂等性设计
|
||||
幂等键设计
|
||||
去重设计
|
||||
请求唯一 ID
|
||||
消息可靠投递
|
||||
至少一次语义
|
||||
至多一次语义
|
||||
恰好一次语义
|
||||
消息重复处理
|
||||
消息乱序处理
|
||||
消息积压处理
|
||||
消费位点管理
|
||||
分布式锁
|
||||
租约机制
|
||||
Fencing Token
|
||||
Leader 选举
|
||||
Raft / Paxos 理解
|
||||
脑裂处理
|
||||
服务发现
|
||||
负载均衡
|
||||
一致性哈希
|
||||
分片迁移
|
||||
数据再均衡
|
||||
纯逻辑与 IO 分离
|
||||
数据流与控制流分离
|
||||
副作用控制
|
||||
状态管理方式选择
|
||||
状态一致性
|
||||
状态机设计
|
||||
状态机 vs 条件分支
|
||||
状态流转设计
|
||||
中间状态设计
|
||||
数据不变量
|
||||
前置条件与后置条件
|
||||
顺序依赖设计
|
||||
短路逻辑设计
|
||||
分支条件设计
|
||||
早返回设计
|
||||
控制流扁平化
|
||||
执行路径设计
|
||||
主流程与分支流程设计
|
||||
代码路径可读性
|
||||
复杂度控制
|
||||
依赖方向设计
|
||||
模块边界设计
|
||||
包依赖治理
|
||||
循环依赖检测
|
||||
接口语义设计
|
||||
API 契约设计
|
||||
接口版本管理
|
||||
向前兼容
|
||||
向后兼容
|
||||
错误码规范
|
||||
错误语义稳定性
|
||||
部分响应设计
|
||||
批量接口设计
|
||||
限流响应协议
|
||||
请求签名
|
||||
契约测试
|
||||
函数职责设计
|
||||
逻辑拆分粒度
|
||||
抽象层次选择
|
||||
组合方式选择
|
||||
处理模式选择
|
||||
策略模式 vs switch-case
|
||||
管道模式 vs 单体函数
|
||||
事件驱动 vs 直接调用
|
||||
同步处理 vs 异步处理
|
||||
批处理 vs 实时处理
|
||||
配置化 vs 硬编码
|
||||
配置化 vs 代码化
|
||||
通用化 vs 专用化
|
||||
规则引擎 vs 硬编码
|
||||
通用框架 vs 专用实现
|
||||
可替换性
|
||||
规则隔离
|
||||
扩展点设计
|
||||
变更影响范围
|
||||
技术债识别
|
||||
技术债偿还策略
|
||||
迁移策略
|
||||
废弃策略
|
||||
兼容窗口
|
||||
文档化
|
||||
ADR 决策记录
|
||||
设计评审
|
||||
接口评审
|
||||
性能评审
|
||||
安全评审
|
||||
输入合法性校验
|
||||
边界条件覆盖
|
||||
异常分类
|
||||
错误传播
|
||||
错误封装
|
||||
错误恢复
|
||||
部分成功处理
|
||||
流程中断与恢复
|
||||
中断、回滚、重试流程
|
||||
重试策略
|
||||
指数退避
|
||||
重试抖动 jitter
|
||||
重试风暴防护
|
||||
失败降级策略
|
||||
限流设计
|
||||
熔断器设计
|
||||
舱壁隔离
|
||||
过载保护
|
||||
请求排队策略
|
||||
丢弃策略
|
||||
快速失败
|
||||
故障隔离
|
||||
故障注入
|
||||
混沌工程
|
||||
降级开关
|
||||
灰度降级
|
||||
超时预算
|
||||
Deadline 传播
|
||||
服务健康检查
|
||||
自愈机制
|
||||
优雅降级
|
||||
优雅关闭
|
||||
启动预热
|
||||
冷启动控制
|
||||
灾难恢复
|
||||
备份与恢复
|
||||
RPO / RTO
|
||||
认证设计
|
||||
授权设计
|
||||
权限模型
|
||||
最小权限原则
|
||||
权限边界
|
||||
身份冒用防护
|
||||
输入注入防护
|
||||
SQL 注入
|
||||
命令注入
|
||||
XSS
|
||||
CSRF
|
||||
SSRF
|
||||
反序列化风险
|
||||
路径穿越
|
||||
敏感信息脱敏
|
||||
日志脱敏
|
||||
密钥管理
|
||||
Token 生命周期
|
||||
加密存储
|
||||
传输加密
|
||||
签名校验
|
||||
重放攻击防护
|
||||
多租户隔离
|
||||
安全审计
|
||||
依赖漏洞治理
|
||||
供应链安全
|
||||
单元测试设计
|
||||
集成测试设计
|
||||
端到端测试
|
||||
回归测试
|
||||
稳定性测试
|
||||
兼容性测试
|
||||
模糊测试 Fuzzing
|
||||
属性测试 Property-based Testing
|
||||
测试数据构造
|
||||
Mock 边界
|
||||
测试隔离
|
||||
可测性设计
|
||||
确定性测试
|
||||
时间依赖测试
|
||||
随机性控制
|
||||
灰度发布
|
||||
蓝绿发布
|
||||
金丝雀发布
|
||||
滚动发布
|
||||
回滚策略
|
||||
配置发布
|
||||
特性开关
|
||||
Feature Flag
|
||||
数据库变更发布
|
||||
兼容性发布
|
||||
双写切换
|
||||
流量切换
|
||||
影子流量
|
||||
压测环境隔离
|
||||
生产变更风险评估
|
||||
变更审计
|
||||
发布前检查
|
||||
发布后验证
|
||||
Runbook
|
||||
应急预案
|
||||
值班机制
|
||||
资源成本评估
|
||||
CPU 成本
|
||||
内存成本
|
||||
存储成本
|
||||
网络成本
|
||||
第三方 API 成本
|
||||
云资源成本
|
||||
成本预算
|
||||
弹性伸缩
|
||||
扩容策略
|
||||
缩容策略
|
||||
成本收益权衡
|
||||
反模式识别
|
||||
大锁
|
||||
大事务
|
||||
全局状态污染
|
||||
重复 IO
|
||||
重复计算
|
||||
过深嵌套
|
||||
隐式控制流
|
||||
过度通用化
|
||||
过早抽象
|
||||
过早优化
|
||||
伪优化
|
||||
缺少退路
|
||||
缺少幂等
|
||||
缺少超时
|
||||
缺少取消
|
||||
缺少隔离
|
||||
缺少限流
|
||||
缺少监控
|
||||
缺少回滚
|
||||
缺少兼容
|
||||
缺少验证
|
||||
缺少容量评估
|
||||
Reference in New Issue
Block a user