架构相关
DDD
HYTZZ
你才懒
展开
-
状态模式与策略模式,命令模式的区别
状态模式稳定点对象具有不同的状态,状态和多个行为相关联。即一个对象有多个行为收到状态的控制。即在多个方法中要获取状态,让方法联动与策略模式区别一个具体的实现方法,有多种不同的实现方式,不同的实现方式就是策略与命令模式区别多个对象具有相同的行为(发送者),点击执行某些方法,方法的实现方式可能不同或者为了屏蔽系统差异,需要封装到不同的对象里(接收者),中间加一层命令对象连接...原创 2021-06-03 13:02:17 · 320 阅读 · 0 评论 -
Maria框架总结
Maria框架总结Maria框架实现前端MVCA model contains domain data(领域数据). When a model changes, it informs its observers(需要收集view到model中).A view observes a model(在view的创建或者使用某个model的某个属性的时候,把view注册到model中) and represents(view持有对model的引用) its model’s current state. A原创 2021-05-08 12:55:56 · 680 阅读 · 0 评论 -
组合模式
对于树形结构,当容器对象(如文件夹)的某一个方法被调用时,将遍历整个树形结构,寻找也包含这个方法的成员对象(可以是容器对象,也可以是叶子对象)并调用执行,牵一而动百,其中使用了递归调用的机制来对整个结构进行处理。由于容器对象和叶子对象在功能上的区别,在使用这些对象的代码中必须有区别地对待容器对象和叶子对象,而实际上大多数情况下我们希望一致地处理它们,因为对于这些对象的区别对待将会使得程序非常复杂。组合模式为解决此类问题而诞生,它可以让叶子对象和容器对象的使用具有一致性。组合多个对象形成树形结构以表示具有“转载 2021-05-07 10:02:07 · 59 阅读 · 0 评论 -
策略模式
策略模式:稳定点:实现的目标是固定的,比如无论是否打折或者采用某种打折方式,付款的动作(目标)是一定要完成的变化点:采用那种打折方式依赖倒转原则(Dependency Inversion Principle, DIP):抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。打折方式依赖打折的抽象类(抽象类相当于付款的动作,是稳定的)依赖倒转原则要求我们在程序代码中传递参数时或在关联关系中,尽量引用层次高的抽象层类,即使用接口和抽象类进行变量类型声明、参数类型声明、原创 2021-05-07 09:01:45 · 63 阅读 · 0 评论 -
MVC---view和controller的关系
MVC要实现的目标是将软件用户界面和业务逻辑分离组成MVC的三个模式分别是组合模式、策咯模式、观察者模式组合模式只在视图层活动观察者模式有两部分组成,被观察的对象和观察者,观察者也被称为监听者。对应到MVC中,Model是被观察的对象,View是观察者,Model层一旦发生变化,View层即被通知更新。View层和Model层互相之间是持有引用的.策略模式是View和Controller之间的关系,Controller是View的一个策略,Controller对于View是可替换的, View和Co原创 2021-05-06 06:41:13 · 833 阅读 · 1 评论 -
设计模式的本质
找到变化,封装变化两个问题:什么在变化,如何封装变化以对象生命周期的视角去看待对象的变化,对象是由创建而产生,然后被使用,最后是消亡。对象有三个不同维度的变化:对象结构的变化、对象规格的变化、对象行为的变化。从UML看,对象之间的关系有依赖、泛化、组合、聚合,但就结构关系上看只有两种,线性关系和非线性关系。线性关系比较简单,就是一对一的关联关系,非线性关系分成两种:树型关系和图型关系。对象结构变化为例,对象的关系划分成两类:线性关系和非线性关系(树和图),在线性关系中,如何解决一个对象的变化不会影原创 2021-04-16 08:58:40 · 147 阅读 · 0 评论