`
胡笨笨
  • 浏览: 162370 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

《大话设计模式》读书笔记一

阅读更多

     今天开始看大话设计模式,觉得通俗易懂,作为设计模式的入门书再好不过。很惭愧现在才说设计模式入门,作为不是软件专业出身缺入了软件行业的门的小菜,在工作后也用到了一些设计模式,但是却没有系统的学习,所以在读的过程中,经常做恍然大悟状,哦,原来叫这个名,哦,原来是这么个原理,不过亡羊补牢,为时未晚,决定花一周时间,认认真真把书读完,我笔记记好,同时,也分享给大家。

 

    书中作者通过大鸟的口说出了自己对编程的见解:“编程时一门技术,更加是一门艺术,不能只满足于写完代码运行结果正确就完事,时常考虑如何让代码更加简练,更加容易维护,容易扩展和复用,只有这样才可以真正得到提高。”我想,一个真正热爱编程的人,终极目标一定是可以优雅的写代码,写出优雅的代码。刚上大学时,我就有告诉自己要做一个优雅的女子,工作了误入了程序员这个行业,也不能阻止我这个想法,那就当一个优雅的女程序员吧。

 

开始正式的学习喽!

聚合表示一种弱的‘拥有’关系,体现的是A 对象可以包含B 对象,但B 对象不是A 对象的一部分
比如:大雁与雁群这两个类,大雁是群居动物,每只大雁都是属于一个雁群,一个雁
群可以有多只大雁。所以它们之间就满足聚合(Aggregation)关系。

合成(Composition,也有翻译成 ‘组合’的)是一种强的 ‘拥有’关系,体现了严格的部

分和整体的关系,部分和整体的生命周期一样[DPE]。比如:鸟和其翅膀就是合成(组合)关系,因为

它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。

 

策略模式(Strategy):它定义了算法家族,分别封装起来看,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。


总结一句:策略模式封装了变化。


策略模式使用场景:策略模式就是用来封装算法的,但是实践中,我们发现可以用它来封装集合任何类型的规则,只要在分析过程中听到需要在不同实践应用不同业务规则,就可以考虑使用策略模式处理这种变化的可能性。

 

在实际的编码过程中,模式都不是单一存在的,多种模式可以整合,得到1+1>2的效果。

 

今天的笔记到此为止,明天继续读书!   

 

 

 

0
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics