【spring】【设计模式】【design-pattern】

本文介绍了设计模式的概念,强调了它们在软件开发中的优势,如增强系统的强壮性、可拓展性和灵活性。讨论了SOLID原则,包括单一职责、开闭原则、里氏替换原则、接口隔离和依赖倒置。详细阐述了单例设计模式,包括线程安全的实现方式,并对比了懒加载和立即加载的区别。同时提及了工厂模式和代理模式,为读者提供了更丰富的设计思路。
摘要由CSDN通过智能技术生成

1 设计模式的介绍

1.1 介绍

经验总结的产物

1.2 优点

强壮、可拓展、灵活

1.3 原则(SOLID)

s[single]:单一职责

o[open&close]:开闭原则。对新增代码开放,对修改代码封闭

l[Liskov Substitution principle]:里氏替代原则。子类和父类之间的关系。子类中不要去覆盖父类的方法;如果我一定要去覆盖,父类中的方法写为抽象方法

i[interface]:接口隔离原则,避免去写大接口 粒度

d[dependency]:依赖倒置原则

2 具体的设计模式

2.1 单例设计模式(singleton)

2.1.1 什么是单例

应用程序运行过程中,获得某一个类型的实例的时候,获得的始终是同一个

2.1.2 线程不安全的懒加载

2.1.3 线程安全的懒加载单例

synchronized

效率

2.1.4 懒加载和立即加载

懒加载:需要的时候就加载

立即加载:马上加载

时间:获得实例方法

懒加载:当我们去调用到获得实例方法的才进行加载

立即加载:在我们获得实例之前已经完成加载

2.1.5 线程安全的立即加载

2.1.6 线程安全的懒加载(内部类)

2.2 工厂设计模式(Factory)

XXXFactory → 工厂 → 生产实例

2.2.1 简单工厂

提供一个参数,根据提供不同的参数,返回的实例则不同

2.3 代理设计模式

2.4 建造者设计模式

快捷键

shift + enter:快速另起一行

ctrl + shift + enter:补充当前行代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值