架构 理论 定律 总结

来源:互联网 发布:js实现鼠标特效 编辑:程序博客网 时间:2024/06/06 02:23

墨菲Murphy定律

“凡事只要可能出错,就一定会出错”
这条定律来源于 Edward A. Murphy—— 一名航天工程师在 50 年代初对火箭测试失败的回应。这条定律给我们的启示是永远在系统关键地方使用防御性设计,因为系统某些地方总会出错!

康威Conway 定律

“系统设计的架构受限于生产设计,反映出公司组织的沟通架构”
在 60 年代,一位名叫 Melvin Conway 的工程师注意到公司组织结构影响到他们开发的系统的设计。他用一篇论文描述了这个观点,并命名为“Conway 定律”。
这条定律很适用于软件开发领域,甚至体现到代码层面上。交付软件组件的各个团队组织结构直接影响到组件的设计。

高德纳Knuth 定律

“在(至少大部分)编程中,过早优化是万恶之源”
高德纳被称为“人工智能之父”,这条定律是高德纳(Donald Knuth) 的经典语录之一,它告诫我们不要过早优化应用程序中的代码,直到必须优化时再优化。
的确,简单易读的源码可以满足 99% 的性能需要,并能提高应用的可维护性。最开始使用简单的解决方案也让后期性能出现问题时更容易迭代和改进。

道格拉斯•诺斯North 定律

“每一个决定都是一次权衡”
严格的说它目前还不是公认的定律,这是取自 Dan North 的演讲 Decisions,Decisions
这条语录强调无论你做的选择是什么,你总会放弃一个或多个选项
但这不是最重要的。 最重要的是理智地做出决定,了解其他选项,清楚你为什么不选择它们。你要始终根据当前你掌握的信息来权衡并做出决定。

琐碎定律(帕金森琐碎定律)

“组织成员投入大量精力到琐碎的事情上”
这条定律论点是在会议中花费的时间与事情的价值成反比。的确是这样,人们更愿意把注意力和观点放在他们熟悉的事物上,而不是复杂的问题上。

木桶定律

一只水桶能装多少水取决于它最短的那块木板。一只木桶想盛满水,必须每块木板都一样平齐且无破损,如果这只桶的木板中有一块不齐或者某块木板下面有破洞,这只桶就无法盛满水。

羊群效应

个人的观念或行为由于真实的或想象的群体的影响或压力,而向与多数人相一致的方向变化的现象。表现为对特定的或临时的情境中的优势观念和行为方式的采纳(随潮)表现为对长期性的占优势地位的观念和行为方式的接受(顺应风俗习惯)。人们会追随大众所同意的,将自己的意见默认否定,且不会主观上思考事件的意义。
第一个版本代码很烂,不遵守规则以后代码会越来越乱。

原创粉丝点击