设计模式中的“万一”和“有限责任”

设计模式中的“万一”和“有限责任”

吴旻

泰岩网络工作室

 

         和同事讨论一个设计方案。其中的A类负责调度,B类负责数据输入,C类负责数据输出。问题的焦点在于,A类需要知道B和C的健康状态,那么是由A自己记录B和C的状态,还是由B和C向A报告其健康状态呢?

         同事的意见倾向于A自己保存B和C的状态,理由之一是“万一”B和C不能正确返回状态的话,A将不能进行正常的调度工作。

         同样的“万一”理由,他倾向将一些临时数据作为类成员变量保存下来,理由是调试的时候有可能用到。

        

         我把同事的设计风格比喻成“家长制”。“家长制作风”在中国有几千年的传统,一句话就是“包办”,替小孩子做什么,事情或者决定。我家小孩不到5岁,每天早上起来有人给穿衣,有人给端水,有人给洗脸,有人给拿尿盆。如果想到“万一”有点风险,那就一切禁止,看死你:不许跑,不许爬高,不许淘气,不许……当然,也有一大堆必须:必须听话,必须多吃点,必须多穿点,必须……

         家长的压力很大,必须是全能选手,要不然肯定完不成这么多事情。孩子也会越活越痛苦,生命的快乐有相当一部分来自对未知领域的探索,有什么能比不停的压抑自己这件事情更痛苦呢?

 

         目前已知的比较有效的经济模式是“市场经济”。市场经济事实上是高风险的,因为破产和倒闭是随时可能发生的。比如说某家企业通过合法方式获得了银行借款,但由于经营问题而破产,最终导致银行无法收回贷款。企业的风险除了破产外,是需不需要企业家倾家荡产来还贷款;银行的风险在于,不能收回贷款,会不会导致银行产生经营问题。

         市场经济为我们提供了良好的模式:成立有限责任公司。这样,企业破产仅限于企业财产,而不需要企业家倾家荡产;银行也会据此评估贷款无法收回可能产生的影响,从而做出合理的贷款规模与贷款管理方式。

 

         感谢市场经济的有限现任模式,最终让我说服同事摆脱使用“家长制”的大包大揽方式,并最终采用各司其责,分工协作的设计方案。

         总结一句:应对“万一”的办法,是采用“有限责任”模式。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值