论设计模式

   与人聊了聊有关设计模式,遂记下我当时的观点。以下所称的模式皆是设计模式的简称,而不是其他含义的模式。也就是有人描述过的那种每次应用时都有不同,但是又有着似曾相识味道的东西。

   定义模式的角度应该从方法学角度,而不是人们通常习惯的逻辑角度,更不是程序员喜欢的符号逻辑。它的表述应该是“做XX这种事,XX做会有XX好处”;而不是“在XX情况下,应该XX做”。

    举一个简单的例子,从这里到火车站要30分钟,3点钟开车,你决不会2:30出发。这个模式不是说在这种情况下,你一定要提前多少时间出发;而是说在赶火车这件事上,打出时间余量会有好处,在出现堵车的情况下你也不会误事。这个模式通常也会应用到赶飞机、抢位置上,因此更准确的说:在有时间点限制的事上,打出时间余量会有好处。

    对模式的描述或者说定义,还是在进行中的不断清晰着。这清晰(确定)能到什么程度,还很难说。比如,上边举例用的模式还可以进一步精化。为什么一定要赶到一个时间点之前呢,是因为错过了这一点会有很大的损失,到达的时间与损失两者的函数在这一点上有一个量子跃迁。这个模式在更广的意义上可以称作:要在损失激增的时间点之前完成某事,最好留出一定的时间余量。

    但是随着描述的精确,指导意义就被减弱了。谁能在赶去看电影前想到上一段的最后一句呢?如果失去了方法学上的指导意义,那模式还能用来做什么呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值