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

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

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

线程池

2.工厂模式

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

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

3.观察者模式

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

4.策略模式

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

5、创建者模式

构建复杂对象

相关推荐
没有bug.的程序员18 小时前
Eureka 注册中心原理与服务注册发现机制
java·spring·云原生·eureka·架构·注册中心·服务注册发现
optimistic_chen18 小时前
【Java EE进阶 --- SpringBoot】统一功能处理
java·spring boot·java-ee·json·统一功能处理
m0_5913389118 小时前
day8鹏哥C语言--函数
c语言·开发语言·算法
oplp19 小时前
回过头来重新对C语言进行深度学习(一)
c语言·开发语言
西岭千秋雪_19 小时前
Zookeeper数据结构
java·数据结构·分布式·zookeeper
青云交19 小时前
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证
java·随机森林·机器学习·lstm·压力测试·联邦学习·金融风险
程序编程- Java19 小时前
和平精英java 游戏程序
java·游戏程序·安全架构·玩游戏
oioihoii19 小时前
C++中的多态:动态多态与静态多态详解
java·开发语言·c++
毕设源码-朱学姐19 小时前
【开题答辩全过程】以 基于Java的医务室病历管理小程序为例,包含答辩的问题和答案
java·开发语言·小程序
APIshop19 小时前
代码实战:PHP爬虫抓取信息及反爬虫API接口
开发语言·爬虫·php