什么是设计模式,大佬曾经说过:“每一个模式描述了一个在我们周围不断重复发生的问题,已经该问题的解决方案的核心。这样,你就能一次又一次的使用该方案而不必做重复的劳动。”。总结下来,其实就是对普遍问题的总结,然后有了一个通用的解决方案。这就是模式。
在另外一本书中,更有一句话总结的更彻底,“模式就是将变化的和不变的进行分离”。那么不变的可以一成不变,变化的部分可以进行自己的变化。而不变与变的部分通过接口组合的方式进行联系。使变化的部分形成了自己的小模块,也就是将变化控制在最小的范围之内。如果有多个变化,就每个变化都单独分离成一个小模块即可。是不是有点熟悉了,时下最流行的微服务,就是一个个的小模块,每个模块就是一个变化的个体。将变化控制在最小范围之内,以保证灵活等等特性。
所以模式,并不一定就是类设计模式,它可以使用在任何地方。我们生活中,有时候为了省事也就是从外卖平台点餐,而外卖平台里面对接的千千万万的商家。他们之间的关系我们不需要理解,只需要知道我如何对接外卖平台,也就是如何点餐买商品即可,这就是外观模式。
同样的模式的利用,虽然会带来灵活性,但是呢,也会带来一些其他问题。比如:复杂度的上升,以前只需要管理一个人,现在10个人协调工作,当然会有很多问题。还有协调工作的调用问题,以及各个模块出现问题的容错等等,这个问题太大了。还是不要开花了。
但是在软件开发中,没有一成不变的东西,所以我们如何抉择呢。一般的设计遵从适量的前瞻性考虑即可,这个真的需要根据具体的项目进行分析了。存在那种经常变动需求的,有的考虑真的有点多了。但是如果需求变动也就那些,可以试着自己多思考了,毕竟感觉前期还是生搬硬套设计模式的居多,俺也是。毕竟大家都在说这个,感觉自己没写过一两个模式,都不好意思吹牛逼。
总之设计模式还是要看的,而且最好能理解了每个的使用场景和优缺点。这样对以后的灵活运用有很大的帮助。多对照下生活中的例子,可能更好的理解。本人的一点点拙见,后期应该需要再修改下吧。
一内内的小小体会
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...