设计模式初识(一)

什么是模式:

从字面上理解,模:就是模型模板的意思;式就是方式方法的意思。综合起来模式就是:可以当做模型或者模板的方式或方法,按照这个理解就是,设计模式就是指设计方面的模板,也就是设计方面的方式方法。

什么是设计模式:

设计模式:在软件开发过程中,经过验证的,用于解决在特定环境下的,重复出现的,特定问题的解决方案。
详解:结合大家身边的例子来说,比如医药行业,就有自己的设计模式。假设一个人感冒了,到药店买点感冒药,这个感冒药就是一个设计模式的很好体现。

  1. 经过验证的:药品上市前会有大量的验证和实验,来保证药品的安全性;
  2. 特定环境下:这些药品是针对人的,不是针对其他动物的;
  3. 重复出现的:正是因为感冒是会重复出现的,所以研制药才有意义;
  4. 特定问题:感冒药只能用来解决感冒的问题,不能解决其他的问题,比如脚疼;
  5. 解决方案:药品本身就是解决方案的具体体现;

设计模式有什么:

一. 设计模式的组成

在描述设计模式的时候通常会有如下的部分:
1.模式名称:就是每个设计模式起个名字;
2.环境和问题:描述在什么场景下,出现什么样的特定的问题;
3.解决方案:描述如何解决这个问题;
4.效果:描述模式应用的效果,以及可能带来的问题,或者使用中需要权衡的问题。

二 .设计模式和设计原则

面向对象的设计原则:
1.设计原则本身从思想层面上进行指导,只是一个设计上的大体方向,其具体实现并不是只有设计模式这一种,可以在相同的原则指导下,做出很多不同的实现来。
2.每一种设计模式并不是单一的体现某一个设计原则,实际上很多设计模式都是融合了很多的设计思想,并不好特别强调设计模式对某些设计原则的体现。而且每个设计模式在应用的时候也会有很多的考量,不同使用场景下,突出体现的设计原则可能是不一样的。
3.这些设计原则只是一个设计指导,事实上,在实际开发中,很少做到完全遵守,总是在有意无意的违反一些或者部分设计原则,设计工作本来就是一个不断权衡的工作,有句话说的好:’'设计是一中危险的平衡艺术",设计原则只是一个指导,有些时候,还要综合考虑业务功能,实现的难度,系统性能,时间空间等多方面的问题。

三 .设计模式和重构

1.设计模式是重构的目标,重构是达到目标的当手段;
2.重构并不排斥提前设计,重构并不是不需要设计;
3.合理的提前设计+重构来不断改进设计===》趋于优秀的设计系统。

四 .设计模式的学习

给出如下学习设计模式的建议:
1 :首先要调整好心态,不要指望一蹴而就.不可浮躁:
学习和常握设计模式是需要有一个过程的,不同的阶段看这些设计模式会有不同的领悟和感受.不要指望真正的设计模式的学习是又简单又有趣的,一看就懂的,那种课程多是属于科普性质的,只是让你简单了解一下设计模式。这也是为何很多朋友总感觉 "懂”设计模式.却不会在实际项目中应用设计模式,因为你“懂” 程度不够。
要想真正理解和掌握,必须要上升到一定的难度和深度,让你学完后思考,思考后应用.然后再学、再思考、再应用.如此反复,方能成就。
2 :学习设计模式的第一步:准确理解每个设计模式的功能、基本结构、标准实现,了解适合使用它的场最以及使用的效果 ;
3 :第二步:在实际的开发中,尝试使用设计模式,并反复思考和总结是否使用得当;
4 :第三步:再回头去看设计模式的理论.有了实际的模式应用经验再 看 ,会有不同的感悟.一边 看一边结合应用经验来思考。比如:设计模式的本质功能是什么?它是如何实现的?这种实现方式还可以在什么地方可以应用上?如何才能把这个设计模式和具体的应用结合上?这个设计棋式设计的出发点是什么?等等。
5 :第四步:多次重复第二步和第三步。也就是在实际开发中使用.然后结合理论思考.然后再应用.再思考 … … ,如此循环反复多次,直到这到对设计棋式基本掌握的水平。

[参考文档]《研磨设计模式》

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值