软件设计/设计模式
文章平均质量分 82
Code生产力Amazing
这个作者很懒,什么都没留下…
展开
-
设计模式之装饰者模式(Java)
比如,当继承导致类爆炸时、目标类被 final 修饰时,都不宜通过创建目标类的子类来扩展功能。1.装饰者模式的核心思想是通过创建一个装饰对象(即装饰者),动态扩展目标对象的功能,并且不会改变目标对象的结构,提供了一种比继承更灵活的替代方案。装饰者模式:动态的将新功能附件到对象上 在对象功能扩展方面,它比继承更有弹性。2.需要注意的是,装饰对象要与目标对象实现相同的接口,或继承相同的抽象类;2.装饰者的实现类的构造方法中 持有目标类的父类引用。2.要求不影响其他对象,为特定目标对象添加功能。原创 2023-06-16 21:09:01 · 81 阅读 · 0 评论 -
设计模式之观察者模式(Java)
主题与观察者都使用接口:观察者利用主题的接口向主题注册,而主题利用观察者接口通知观察者。在观察者模式中,会改变的是主题的状态。对象之间多对一依赖的一种设计方案,被依赖的对象为Subject,依赖的对象为Observer,Subject通知Observer变化。观察者模式利用”组合“将许多观察者组合进主题中。对象之间的这种关系不是通过继承产生的。而是在运行时利用组合的方式而产生的。找出程序中会变化的方面,然后将其和固定不变的方面相分离。现有接口:提供温度,气压和湿度的接口。松耦合 主题者和观察者之间的关系。原创 2023-06-15 12:39:02 · 404 阅读 · 0 评论 -
设计模式之策略模式(Java)
策略模式是一种定义一系列策略的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合不明白耦合的概念 参见此文章策略模式的策略类层次为GoBehavior定义了一系列的可供重用的算法或行为。继承有助于吸取出这些算法中公用功能在基本的策略模式中,选择所用具体实现的职责由客户端对象承担,并转给策略模式的策略对象。原创 2023-06-13 18:26:12 · 100 阅读 · 0 评论 -
好的模块软件设计的目标是高内聚低耦合
降低模块间的耦合度能减少模块间的影响,防止对某一模块修改所引起的“牵一发动全身”的水波效应,保证系统设计顺利进行。高内聚是指类与类之间的关系而定,高,意思是他们之间的关系要简单,明了,不要有很强的关系,不然,运行起来就会出问题。表就和的模块间传递的不是简单变量,而是像高级语言中的数据名、记录名和文件名等数据结果,这些名字即为标记,其实传递的是地址。:模块之间传递的不是数据信息,而是控制信息例如标志、开关量等,一个模块控制了另一个模块的功能。:一个模块直接访问另一模块的内容,则称这两个模块为内容耦合。原创 2023-06-13 15:56:36 · 268 阅读 · 0 评论