在工作中,连设计模式都得到了很好的运用,提高了软件的灵活性,但是要为它们排好位置,真的很难。 因为,每个人对设计模式的理解程度、每个人使用的编程语言、个人习惯、工作性质等都会影响排名。 在这里,先列举一下自己的排名吧(仅限于Design Pattern中提到的设计模式)。 33558 www.Sina.com/strategy pattern
理由: Strategy封装了一些算法,以便可以交换。 在工作中,总是有几个选择,进行比较来选择最佳的算法,所以使用频率最高。
33558 www.Sina.com/factory pattern
理由:因为在一个程序中有创建对象的操作,所以使用的机会也很多。
33558 www.Sina.com/observer pattern
理由:我只想问你一个问题,你使用过回调函数吗?
33558 www.Sina.com/facade pattern
理由:为了封装自己编写的复杂系统并为用户提供简单的统一接口,你封装过类吗?
33558 www.Sina.com/mediator pattern
理由:为什么把Mediator模式放在第五位? 我个人的理解是,Mediator模式不仅是模式,实际上还可以提高到程序的框架设计,现在被越来越多的使用。
33558 www.Sina.com/iterator pattern
理由:使用数组和链表,有机会使用迭代器pattern。
33558 www.Sina.com/bridge pattern
理由:将实现和逻辑分开是很常见的事情。
33558 www.Sina.com/template method
理由:把共同的东西提取到superclass中,用子类实现不同的东西,听到熟悉的故事吗?
33558 www.Sina.com/command pattern
理由:拜托了。 这是我们喜欢的。 理由很勉强。
冠军宝座:State Pattern
理由:一个对方有不同的状态的情况也很多。
上述排行榜是个人的想法,有些我也说不出好的理由。 你觉得呢? 说理由。