【总结】项目中用过的设计模式

1.单例模式(饿汉式 、懒汉式)

应用场景:当频繁使用同一个对象,如配置信息、数据库连接池、线程池等时,使用单例模式可以避免重复创建对象,节省资源

线程池

2.工厂模式

应用场景:当需要创建的对象具有相似的接口,但具体实现可能不同时,可以使用工厂模式。例如,日志记录器、数据库访问等。

落地页的处理: h5、js、deeplink、callback

3.观察者模式

  • 应用场景:如股票价格监控、用户界面数据绑定等,当数据发生变化时,需要通知其他对象或组件进行相应操作。
  • 点击、曝光监测,通知系统进行转发第三方,解耦

4.策略模式

  • 应用场景:当有多种实现方式可供选择,并且这些实现方式经常需要互换时,可以使用策略模式。例如,排序算法的选择、支付方式的切换等。
  • 截断算法、倒排策略、排序算法(随机、均值、模型)

5、创建者模式

构建复杂对象

相关推荐
煸橙干儿~~1 分钟前
分析JS Crash(进程崩溃)
java·前端·javascript
2401_854391082 分钟前
Spring Boot大学生就业招聘系统的开发与部署
java·spring boot·后端
Amor风信子3 分钟前
华为OD机试真题---跳房子II
java·数据结构·算法
我是陈泽6 分钟前
一行 Python 代码能实现什么丧心病狂的功能?圣诞树源代码
开发语言·python·程序员·编程·python教程·python学习·python教学
优雅的小武先生17 分钟前
QT中的按钮控件和comboBox控件和spinBox控件无法点击的bug
开发语言·qt·bug
虽千万人 吾往矣23 分钟前
golang gorm
开发语言·数据库·后端·tcp/ip·golang
创作小达人26 分钟前
家政服务|基于springBoot的家政服务平台设计与实现(附项目源码+论文+数据库)
开发语言·python
郭二哈28 分钟前
C++——list
开发语言·c++·list
杨荧29 分钟前
【JAVA开源】基于Vue和SpringBoot的洗衣店订单管理系统
java·开发语言·vue.js·spring boot·spring cloud·开源
ZPC821036 分钟前
Python使用matplotlib绘制图形大全(曲线图、条形图、饼图等)
开发语言·python·matplotlib