这几节课听得有点蒙蔽 因为不是现场敲代码 而是简单分析了一下 幸好装饰器模式还能听得懂 所以听起来还是有点感觉的。我觉得这个装饰器模式用在这里最大好处就是实现了配置化 并且是很方便地切换 当然不用也可以做出相同的效果 不过肯定没有这个维护起来方便。
2016-09-16
你们想想看看,如果我不让你看到类的内部而让你实现遍历 这个方法不就是很好嘛?对不对。而且这个看起来更清晰
迭代器模式可以隐藏遍历元素的所需的操作 在不需要了解内部实现的前提下 遍历一个聚合对象的内部元素
如果用传统的方法实现的话 不需要实现iterator接口 想让这个实现接口的方式其实是更简单的更通用的
迭代器模式可以隐藏遍历元素的所需的操作 在不需要了解内部实现的前提下 遍历一个聚合对象的内部元素
如果用传统的方法实现的话 不需要实现iterator接口 想让这个实现接口的方式其实是更简单的更通用的
2016-09-16
没有foreach的话,添加到数组里面的每个装饰的行为怎么遍历执行??我觉得还是必须的。add装饰器里面的参数是接口 怎么感觉有点像java里面的面向接口编程的感觉
我感觉这个装饰器模式是不是也叫装饰者模式 在java里面的IO流的那里应用的比较多吧。
就是在实际行为的前后分别定义应该执行的行为比如这里的draw前后分别定义beforeDraw afterDraw方法 同时因为你需要在实例化的时候添加你自己定义的装饰行为 所以还需要添加一个addDecorator方法 用于添加装饰行为。
我感觉这个装饰器模式是不是也叫装饰者模式 在java里面的IO流的那里应用的比较多吧。
就是在实际行为的前后分别定义应该执行的行为比如这里的draw前后分别定义beforeDraw afterDraw方法 同时因为你需要在实例化的时候添加你自己定义的装饰行为 所以还需要添加一个addDecorator方法 用于添加装饰行为。
2016-09-16
这个东西其实在框架里面很多地方都是用得到的。别的编程语言里面也是有的。比如在Hibernate里面这个orm思想。比如在ThinkPHP里面的create() 比如在yii里面的ActiveRecord。
2016-09-15