外卖小哥|重新学习设计模式一:什么是设计模式( 二 )


  • 解决方案:有了问题 , 就要有解决方案 , 我们了解到的模式就类似一个模板 , 解决某个问题或场景的模板 , 那么模板就有具体的设计或实现方式 。 解决方案就是针对这个问题 or 场景的一种设计组成部分 , 可以用于多种场合 , 它的思路并不只针对于特定的问题而设计或实现的 , 可以使用同类或相似的问题场景 , 而是提供设计问题的抽象描述和怎么用一个具有一般语义的元素组合(java语言中的类或对象组合)来解决这个问题 。
  • 效果:有了问题 , 有解决方案 , 当然要有解决方案的效果 , 总不能说我这个解决方案很厉害 , 但对于这个问题 , 效果不好 , 这不是扯淡吗?效果一般都是从两个方面来描述:优点、缺点 。 模式效果描述了模式应用的效果及使用模式应权衡的问题 , 对于评价一个设计选择和理解使用模式的代价及好处是非常有意义的 , 软件的大多数比较关注对时间和空间的衡量 , 也是表达了语言和实现问题效果 。 这对系统的灵活性、扩充性或可移植性有一定的影响 。

  • 以上是我个人对于重温设计模式的看法 , 当然每个人思考问题的方式不一样 , 出发点不同 , 会产生对于设计模式的理解不一样 , 一个人设计出来的程序对于另一个人来说只是基本思路 , 基本构造部分而已 , 有时间大家可以一起交流探讨 。