沉思录:别人的棺材

原创 2003年05月01日 11:26:00

别人的棺材<?XML:NAMESPACE PREFIX = O />

荣耀 2002

一个大的软件系统通常包括若干子模块。通常来说,良好的设计具有这样一些特点:

1.      模块功能单纯、明确、不重叠;

2.      模块之间的通讯接口清晰;

3.      模块耦合度较小。

现在有A、B、C...等几个模块,B模块(但不限于B模块)负责生成指令,A模块负责执行指令,两个模块对指令的格式定义了规约。

B模块生成的指令,可能在格式上就是不正确的,也可能格式正确但内容非法,比方说,指令里的某个参数不得超过某个值,否则A若照搬执行,即会造成严重后果。很显然,A模块必须具有严谨的逻辑分析例程,要考虑所有边界条件和异常情况。

现在有人提出一种“更保险的”设计方案:B模块也要实现同样的指令逻辑分析例程。乍一看,似乎颇有些道理,实际上……,唔,你说呢?

道理其实很简单。假如现在C、D、E...等(第三方)模块都要向A模块发送指令呢?更有甚者,假如指令分析的业务规则发生了变动呢?你希望只修改一处逻辑分析例程,还是修改好多处?

类似地,还有一些不属于技术认识缺陷的例子。

在一个开发团队中,本来是甲的任务,却被乙做掉了,或者甲已经开发过的好端端的模块,乙也要写一个功能类似的“更好的”模块。

不管是乙的自作多情,还是某人打着“团队协作”幌子的无端指派,造成的后果都可能会比B模块执行了一个非法指令所导致的后果,严重得多。

那些来源于生活、听起来滑稽的故事常常使我们感到好笑,以至于忘了自己可能就是笑话中的丑角,或许有些话非得说到极端才能振聋发聩。

“把别人家的棺材抬回自己家哭”,说的就是这个道理。

-完-

[沉思录(中英双语)·典藏本].(古罗马)奥勒留.扫描版.PDF 免费下载

下载地址:[沉思录(中英双语)·典藏本].(古罗马)奥勒留.扫描版.PDF
  • jiongyi1
  • jiongyi1
  • 2017年11月13日 21:48
  • 227

读书笔记∣概率论沉思录 01

读书笔记:概率论沉思录
  • zhaozhn5
  • zhaozhn5
  • 2017年09月09日 21:09
  • 335

C++ 沉思录》阅读笔记——类的反思

类这个概念无非是数据和方法的集合,为什么我一直困惑呢?为什么不弄清楚呢? C++中的类这个概念里有4个函数比较特殊,像我这种以前有C经验的人可能一时难以适应,它们是构造函数、析构函数、复制构造函...
  • flora_yao
  • flora_yao
  • 2015年07月02日 18:02
  • 639

概率论沉思录 前言

    1998年4月30日Jaynes去世。此前,他曾经要我完成并出版他的这本关于概率论的书。为此,我曾纠结了一段时间。因为我认为Jaynes毫无疑问想完成这本书;但不幸的是,这本书后面的许多章节(...
  • shoreman
  • shoreman
  • 2011年04月17日 22:22
  • 2034

《软件开发沉思录》读书笔记

1、  业务软件的最后一英里 l  何为最后一英里问题:简单-复杂-不堪重负-采用新系统来替换?风险?(替换的风险,不替换的风险,二难境地) l  敏捷思潮的一大贡献,是对于软件开发作为社会行为的...
  • zhang_qxian
  • zhang_qxian
  • 2017年01月04日 08:55
  • 302

《沉思录》

----------------------- Page 1----------------------- 《沉思录》 一本写给自己的书 ──《沉思录》译者前言 斯多亚派着名哲学家、古罗马帝国皇帝马可...
  • mensanesei
  • mensanesei
  • 2011年01月10日 20:44
  • 9969

《C++沉思录》读书笔记之代理类

#include #include int main() { int i; for( i=0;i
  • KangRoger
  • KangRoger
  • 2014年06月11日 21:00
  • 1139

王怡 | 宗教改革沉思录:爱是无端的怜悯

王怡 | 宗教改革沉思录:爱是无端的怜悯 原创 2017-05-23 王怡 王怡的麦克风 154 李漫波弟兄,引用路德的话说: ...
  • spritzdance
  • spritzdance
  • 2017年05月23日 20:52
  • 514

<<C++ 沉思录>> 中文人民邮电出版 勘误

> 中文人民邮电出版 勘误 这本中文版里面有各种坑爹的小错误. 比方说变量名的大小写, 同一个变量, 出现了大小写不一致, 等等问题都有. 然后今天感觉遇到了个语法问题. 关于继承权限的问题....
  • u011368821
  • u011368821
  • 2015年05月22日 15:33
  • 1004

《C++沉思录》第五章---代理类

          在编程过程中可能要把不同的对象(这些对象可能存在一些关系:继承)放到一个容器里边,我们都知道一个基类的指针可以指向子类的一个实例,我们就在这里有用一个基类的指针使其指向不同的实例,...
  • wei801004
  • wei801004
  • 2006年06月08日 14:52
  • 1416
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:沉思录:别人的棺材
举报原因:
原因补充:

(最多只允许输入30个字)