设计模式
文章平均质量分 66
程序员爱何
菜鸟一个
展开
-
【设计模式FoF23】OOP原则
1.开闭原则: 对扩展开发,对修改关闭 2.里氏替换原则 继承必须确保超类所拥有的性质在子类中仍然成立 3.依赖倒置原则 面向接口编程,不要面向实现编程 4.单一职责原则 控制类的粒度大小、将对象解耦、提高其内聚性 5.接口隔离原则 要为各个类建立它们需要的专用接口 6.迪米特法则 降低耦合度 只与你的直接朋友交谈,不跟‘陌生人’说话 假设A要给C 一个东西 但他们是陌生人所以就要先给b朋友,b在给c朋友 7.合成复用原则 尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系 ‘is a’ 和原创 2021-08-06 16:39:41 · 92 阅读 · 0 评论 -
SpringAOP理解
什么是AOP AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 AOP在Spring中的作用 提供声明式事务;允许用户自定义切面 以下名词需要了解下: 横切关注点:跨越应用原创 2021-08-05 12:22:36 · 92 阅读 · 0 评论 -
动态代理 理解
静态代理的理解 动态代理的角色和静态代理的一样 . 动态代理的代理类是动态生成的 . 静态代理的代理类是我们提前写好的 动态代理分为两类 : 一类是基于接口动态代理 , 一类是基于类的动态代理 - 基于接口的动态代理----**JDK动态代理** - 基于类的动态代理--cglib - 现在用的比较多的是 javasist 来生成动态代理 . 百度一下javasist - 我们这里使用JDK的原生代码来实现,其余的道理都是一样的! JDK的动态代理需要了解两个类 核心 :转载 2021-08-05 11:00:04 · 86 阅读 · 0 评论 -
代理模式 再理解
为什么要学习代理模式 为什么要学习代理模式,因为AOP的底层机制就是动态代理! 思维结构图: 静态代理 角色分析 抽象角色:一般会使用接口或者抽象类来解决 租客 真实角色:被代理的角色 房东 代理角色:代理真实的角色,一般会附属一些操作 中介 客户:访问代理对象的人 代码逻辑实现: Rent 租客 //抽象角色:租房 public interface Rent { public void rent(); } Host 房东 //真实角色: 房东,房东要出租房子 public class H转载 2021-08-05 10:11:09 · 63 阅读 · 0 评论