设计模式的学习
文章平均质量分 73
设计模式的学习笔记,学习用的是《大话设计模式》
二狗mao
一个大一的软工人,方向是Java后端开发,关注必回关。上的是b站上尚硅谷的,博客当笔记写,笔记内容都是尚硅谷课上的。来自井冈山大学
展开
-
设计模式,建造者模式、外观模式
外观模式也是将耦合降低,并让主要业务不用关注过多的细节。平时的三层架构中使用的也是外观模式,这个模式会在我们不经意间使用,可见其方便性。建造者模式是关于一些创建的动作,将其放在向导角色中执行,主要业务就不用关注创建的动作。建造者模式分为抽象建造角色、具体建造角色和向导角色,抽象建造角色负责规范建造角色的创建动作,具体建造角色负责具体的创建的动作,向导角色负责调用创建角色的创建动作。建造者模式其实也是使用了外观模式的思想,它们的共同目的都是实现高内聚低耦合,实现业务的便捷和灵活性。原创 2024-04-30 21:23:29 · 208 阅读 · 1 评论 -
设计模式,模板方法模式、原型模式
模板方法模式,就是将一些具体层都会有重复的内容,都放在抽象层作为具体层的模板,让具体层的代码能更简洁,也更好地实现代码复用。原创 2024-04-10 20:00:26 · 576 阅读 · 0 评论 -
设计模式,工厂方法模式
以上代码可以看出,这个模式的好处就是当要加一些新的产品时,不用去改动原先的工厂,而是直接创建一个新的工厂,更符合开闭原则。可以看出,当一类产品只有一个工厂类时,就是简单工厂模式。当一类产品有多个工厂类时,就是工厂方法模式。但是这种模式还是有缺点,当增加了新的产品后,还是要对总工厂类中的代码进行一定修改,还是没有很好地符合开闭原则。当然后面还有更好的能解决此问题的模式,拭目以待吧。原创 2024-04-06 23:38:19 · 733 阅读 · 0 评论 -
设计模式,代理模式
代理模式就是一个对象让另一个对象为它打工。代理模式分为动态代理和静态代理,精妙的地方主要在动态代理,想了解的可以看我主页博客SSM框架,spring-aop的学习,在AOP中就可以实现将重复冗余的代码让代理对象来执行,以实现简化代码。这里代理模式东西不多,更多知识点在AOP的学习中已经写过了,就不重复写了,见以上链接。原创 2024-03-31 17:15:18 · 518 阅读 · 0 评论 -
设计模式,装饰模式
装饰模式的原理就是利用继承性,给每一个具体功能装饰类的对象赋予装饰的能力,并能利用super调用被装饰对象的功能,再加上新的功能。用衣服来说明装饰模式就是。定义一件衣服,它能直接套在人身上,也能继续套在其他衣服上。假如一号衣服能保暖,二号衣服能防弹,三号衣服能防水。那么一号衣服装饰人,二号衣服装饰一号衣服,三号衣服装饰二号衣服。那么,这个人就能既保了暖,又能防弹,又防水。装饰模式巧妙的利用了继承性,使得功能能根据需求动态添加。原创 2024-03-27 20:11:00 · 845 阅读 · 0 评论 -
设计模式,策略模式
策略模式能更好地管理和使用一类算法,在做算法增删改时,无需改动业务代码,只要对底层进行修改。使得代码的耦合度低,封装性强。策略模式结合简单工厂模式,让context起到工厂的作用,能让业务代码更为简洁,也更易于理解和使用。比起普通的策略模式,耦合度更低,封装性更强。原创 2024-03-24 17:19:56 · 578 阅读 · 0 评论 -
设计模式,简单工厂模式
简单工厂模式是利用工厂类来实例化一系列对象,如此简化业务代码。简单工厂模式由工厂角色、抽象产品角色、具体产品角色组成删除只需要在工厂角色中去除其实例化的代码,再删除其具体产品角色增加只需要创建一个具体产品角色,让其实现抽象产品角色的功能,再到工厂角色中增加其实例化的代码即可修改只需要在其具体产品角色中修改相应要修改的功能即可以餐馆为顾客烹饪菜品为例:若抽象产品角色为菜品,菜品的具体类型就是具体产品角色。对于餐馆来说,菜品的制作就是菜品的功能。原创 2024-03-22 20:24:51 · 524 阅读 · 0 评论