09 2020 档案
摘要:由于应用开发过程中先前完成的类型会因为需求变化(无论是业务功能,还是技术实现或是出于集成的需要)增加新的方法,如果直接在基类中增加新的方法,其派生类型可能需要相应进行比较繁琐的处理。而使用访问者模式可以做到在不改变既有类型层次的前提下,运行时动态为类型层次的每个类增加新的操作。 访问者模式 GOF对
阅读全文
摘要:在策略模式中,一个类的行为或算法可以在运行时动态更改。 GOF对策略模式的描述为: Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algori
阅读全文
摘要:状态模式允许一个对象在其内部状态改变时改变它的行为。用电梯来举例,电梯可以认为具有开门、关门、运行、停止四种状态,这四种状态之间的切换具有多种限制,比如在开门状态下不电梯不能运行,只能转为关门状态;在运行状态下,电梯只能转为停止状态... 设想一下,如果要常规的if-else或者switch-cas
阅读全文