
软工法则
·更新于 5/6/2026
软件开发20条核心准则
1. 软件本质准则
软件的本质是控制复杂度的艺术,码是写给人类阅读、顺便给机器执行的。
2. 模块设计黄金法则
高内聚、低耦合是模块设计的黄金法则,它使系统可理解、可复用、可演进。
3. 优化原则
过早优化是万恶之源——在未证明瓶颈前,优先保证正确性与清晰度。
4. 代码重构原则
重复的代码是万恶之源,重构是将重复消灭、将意图凸显的持续过程。
5. 开闭原则
对扩展开放,对修改封闭,通过抽象与多态实现架构的弹性。
6. 依赖倒置原则
高层策略不依赖底层细节,两者共同依赖抽象接口。
7. 康威定律
系统的架构总是复制了组织内部的沟通结构。
8. 软件开发铁三角
范围、时间、成本相互制约,质量是交付的底线而非妥协项。
9. 开发模型核心启示
瀑布模型教会我们阶段评审的价值,敏捷方法论教会我们响应变化高于遵循计划。
10. 敏捷宣言核心价值
可工作的软件比详尽的文档更有说服力,客户协作比合同谈判更重要。
11. 持续集成与交付准则
每次提交都应是可发布的候选,自动化是信心的来源。
12. 代码审查价值
代码审查不是在找茬,而是团队共享知识、降低缺陷概率、培养共同所有权的最经济手段。
13. 测试金字塔纪律
写大量的单元测试,适量的集成测试,极少数的端到端测试。
14. 技术债务认知
技术债务是为了短期交付而借的高利贷,不按时偿还,利息会吞噬整个迭代周期。
15. 文档编写准则
好的文档不是厚,而是够用、准确、与代码同步——过时的文档比没有文档更危险。
16. 版本控制基本伦理
频繁提交,原子化变更,提交信息讲述为什么改而不是改了啥。
17. 代码复用准则
复用不是复制粘贴,而是通过封装、库、服务契约实现的真实共享。
18. 代码价值衡量标准
软件维护占生命周期总成本的60%~80%,可读性与可修改性是衡量代码价值的终极标尺。
19. 没有银弹定律
没有一种单一的技术或管理方法能在生产率、可靠性或简洁性上带来数量级提升。
20. 软件开发终极真相
需求永远在变,优秀的架构是让变化局部化、影响最小化的架构。
评论(0)
需要登录后才能评论。
暂无评论。