专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
今天看啥  ›  专栏  ›  码农翻身

漫画 | 统治软件开发的著名定律,程序员根本无处可逃!

码农翻身  · 公众号  · 程序员  · 2024-11-21 09:22

主要观点总结

本文介绍了一些关于软件开发和团队组织的定律和原则。首先提到了80/20原则,指出代码中的大部分错误是由小部分代码引起的,公司的大部分工作也是由少部分员工完成的。接着,阐述了康威定律,强调软件的任何部分都反映了其组织结构,团队应按照有边界的上下文来规划。最后介绍了伯斯塔尔定律,即发送时要保守,接收时要大方,这一原则在TCP协议和HTML的成功与失败中都有其体现。

关键观点总结

关键观点1: 80/20原则的应用

文章提到在代码和公司工作中都存在一种不平衡现象,大部分的错误和工作都是由少部分因素引起的。这提醒我们在软件开发中需要关注那些关键的代码部分以及发掘那些表现突出的员工。

关键观点2: 康威定律的启示

软件的部分与整体之间的关系反映了其组织结构,因此团队的组织结构应该围绕服务边界而非孤立的技术体系来规划。这有助于避免跨领域修改的难度,提高团队协作的效率。

关键观点3: 伯斯塔尔定律的影响

发送时要保守,接收时要大方的原则使得TCP协议和HTML既有健壮性也有灵活性。这也提醒我们在软件开发中需要保持这种平衡,既要保证系统的稳定性又要保持一定的开放性。


文章预览

后记:其实类似上文的定律很多,比如80/20原则:代码中80%的错误都是由代码中的20%引起的。另外,公司80%的工作是由20%的员工完成的,问题是你并不总是清楚谁是那20%;再比如著名的康威定律:软件的任何一部分都反应了创建它的组织结构。 许多组织都根据他们的技能来划分团队。因此会有前端开发、后端开发和数据库开发组成的团队,这会导致某人想要修改一个不属于自己领域的东西会很难。最好是按照有边界的上下文(bounded context)来规划团队,像微服务这样的架构就是围绕服务边界而不是孤立的技术体系划分来组织他们的团队。还有伯斯塔尔定律(Postel's Law): 发送时要保守,接收时要大方。 Jon Postel 最初认为正是这个原则让TCP协议的实现很健壮。 一些人认为这正是 HTML 很成功的原因,也有一些人认为这正是 HTML 很失败的原因。 (因为HTML可 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览