关联知识库:README
工程思维系统Wiki
系统概览
工程思维不是一堆独立的概念,而是一个有机的整体系统。每个概念都是这个系统的一个维度,它们相互关联、相互影响、相互补充,共同构成了完整的工程思维体系。
核心哲学
- 整体大于部分之和:系统的整体功能无法通过简单叠加各部分功能来理解
- 关联性思维:每个概念都与其他概念存在内在联系
- 动态平衡:系统内部存在张力,需要智慧地平衡各种矛盾
- 演进性:系统会随着时代发展而演进,但核心原则保持不变
️ 系统架构图谱
工程思维系统
│
┌────────────────┼────────────────┐
│ │ │
认知层 落地层 历史演进
(如何想) (如何做) (时代背景)
│ │ │
┌───┴───┐ ┌───┴───┐ ┌───┴───┐
│ │ │ │ │ │
模块化 抽象化 ️ 架构设计 迭代优化 ⏰ 软件危机 AI时代
│ │ │ │ │ │
└───┬───┘ └───┬───┘ └───┬───┘
│ │ │
└────────────────┼────────────────┘
│
统一认知
(系统思维)
认知层:如何思考
核心思维
- 分工专业化:将复杂问题分解为小任务
- 复杂性管理:通过分层、模块化、抽象来管理
- 抽象层次:从系统层到函数层的不同抽象程度
- 简单性优先:再复杂的系统也要汇聚到简单接口
核心文档
- 认知负荷才是关键:从复杂到简单的代码设计哲学 - 人类认知限制是设计的根本约束
- 单一职责追根溯源——通用的分工智慧 - 分工专业化在代码层面的体现
- 模块化追根溯源——从远古分工到系统工程 - 复杂性分离的系统性方法
- Modularity —— A thinking to separate complexity - 模块化思维的系统性方法
- KISS Principle(keep it simple stupid) - 简单性优先的设计哲学
- OOP:A new perspective on programming - 抽象和封装的高级应用
- DDD —— 隐性知识的显化 - 业务复杂性的领域建模
- # SICP学习笔记:计算机程序的构造与解释 - 程序设计的本质思考
落地层:如何行动
️ 架构设计
- 从复杂到简单:肖恩·戈德克的工程智慧
- 系统类型:同构(统一)vs 异构(灵活)
- 架构演进:单体 → 分布式 → 微服务
迭代优化
- 问题解决:质疑问题 → 分而治之 → 具体分析 → 持续优化
- 质量保障:认知负荷测试、性能验证、风险控制
价值驱动
- 从估算到预算:DHH的Shape Up方法
- AI时代策略:瀑布确定性 + 敏捷适应性
核心文档
- # ️ GitHub工程师肖恩·戈德克的系统设计哲学:从复杂到简单的工程智慧 - 系统设计的核心哲学
- # ️ 架构设计的本质:腾讯云开发者《万字详解架构设计》 - 架构设计的本质探索
- # ️ 架构设计的本质:腾讯云开发者《万字详解架构设计》[手稿笔记] - 架构设计的手稿笔记
- 同构系统与异构系统深度对比分析 - 系统类型的深度分析
- # 秒杀系统设计:从质疑到落地的工程思维 - 从质疑到落地的思维过程
- DHH访谈深度解析:重新审视软件开发的本质 - 重新审视开发本质
- # AI时代的软件工作流革命:从历史演进到未来探索 - 从瀑布到AI时代的完整演进
历史演进
⏰ 软件危机演进
- 1960s-1970s:第一次危机 → 结构化编程
- 1980s-1990s:第二次危机 → 面向对象编程
- 2020s:AI时代 → 混合策略
AI时代挑战
- 矛盾:敏捷"沟通优于文档" vs AI"需要精确信息"
- 解决:瀑布确定性 + 敏捷适应性
核心文档
- # 软件危机与复杂性:工程思维的诞生背景 - 工程思维的诞生背景
- Software Crisis and Complexity - 软件危机的英文版本