这个模式支持"开-闭"原则吗?
如果我加入一个建造者来建立一个新的部件,那么Builder接口需要修改,Director 也需要修改.请问有什么好的办法吗?
builder模式是封装组装过程,至于部件是由谁创造的,不在Builder模式范围内。
比如原来的
buildPartA(),buildPartB()...
改成buildPart(Vector 零件集)
不过这样需要你进行运行时类型检测,然后 Director的接口也改一下,
Design patterns java companion中的Swing例子其实就是这么回事
> 这个模式支持"开-闭"原则吗?
> 如果我加入一个建造者来建立一个新的部件,那么Builder接口
> 枰薷?Director 也需要修改.请问有什么好的办法吗?
猜你喜欢
本站原创《复杂软件设计之道:领域驱动设计全面解析与实战》