-
微服务架构及其最重要的 10 个设计模式
2024-01-02
64313 浏览
1.概述1.1线程池是什么线程池(ThreadPool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL。创建线程本身开销大,反复创建并销毁,过多的占用内存。所以有大量线程创建考虑使用线程池。线程池不用反复创建线程达到线程的复用,更具配置合理利用cpu和内存减少了开销,性能会得到提高,还能统一管理任务比如服务器收到大量请求,每个请求都分配线程去处理,对服务器性能考验就比较大
-
设计模式(七):适配器模式
2023-12-28
64308 浏览
下图的Duck(鸭子)接口有两个方法,一个是quack(呱呱叫),一个是fly(飞)下面是一个火鸡的接口火鸡的具体实现这个图的意思是,之前上面鸭子和火鸡的案例中,适配器是TurkeyAdapter,目标接口是Duck,被适配接口是Turkey。为什么呢?因为适配器实现了目标接口,并持有被适配接口的实例。所以客户使用适配器的过程如下:(MallardDuck使用TurkeyAdapter的过程):客
-
设计模式(五):代理模式
2023-12-28
63068 浏览
来看普通的代码:房东出租房屋,代码没毛病来看静态代理:Rent.java和HouseOwner.java不变,增加Proxys.java,然后测试在静态代理中,房东HouseOwner是(真实的角色)被代理的角色,而Proxys是代理房东去出售房屋的,所以Proxys是代理对象。可以看出真实对象和代理对象都实现了Rent接口(出租房子的接口)。并且代理对象中保存了真实对象的引用。当然也可以这样,P
-
设计模式(三):抽象工厂模式
2023-12-28
63610 浏览
抽象工厂模式抽象工厂模式(AbstractFactoryPattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。介绍意图:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。主要
-
设计模式(二):工厂模式
2023-12-28
66007 浏览
工厂模式工厂模式(FactoryPattern)是Java中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。主要解决:主要解决接口选择的问题。何时使用
-
设计模式(一):策略模式
2023-12-28
65553 浏览
策略模式:策略模式,听这个意思就是说,这是一个策略,那么一般来说策略都是好几种方法吧,无论是打仗,或者打游戏,都会准备不同的几种策略,而在代码方面也是一样,策略模式也就是定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换策略模式解决的什么问题?在有多种算法相似的情况下,使用if...else所带来的复杂和难以维护。什么时候使用策略模式呢?一个系统有许多许多类,而区分它们的只是他们直接的行
-
设计模式篇——原型模式(如何优雅地拷贝对象)
2023-12-29
67544 浏览
生活场景:招商信用卡给客户发送电子邮件现在好多人都会使用信用卡,而信用卡中心会每月向用户发送账单或者其他广告或者活动。比如现在招商信用卡中心要向10个客户发送一条抽奖活动的邮件,这10个人接收到的邮件的内容肯定是一样的,不一样的地方就是客户的一些基本信息展示。因此,我们可以使用一个通用的模板,然后把客户的信息放到模板中生成一份完整的电子邮件。根据分析,我们设计如下类图:代码清单如下。模板类:邮件类
-
设计模式篇——命令模式
2023-12-29
65779 浏览
项目经理的重要性在上学的时候,老师会把一个班的同学分成几个小组,并且每个小组选出一个组长,由组长带领自己的组员共同完成一个程序的开发。参加工作后,每个项目也都会有一个项目经理的角色,他们要做的事情就是同客户沟通需求并且制定最终需求,控制成本,把控进度,分配任务等等,可见一个项目经理对整个项目组是非常重要的。那没了项目经理会怎么样呢?接下来,我们用代码来模拟这个场景,看下缺少项目经理这个角色后,会存
-
设计模式篇——中介者模式(优化多对象依赖的必备利器)
2023-12-29
63969 浏览
场景:多部门相互依赖,协同工作相信大家都去超市买过东西,非常方便,而且超市货架上的货源不会断货,为了保证这一点,超市一定有自己的一个仓库,以便随时补货。既然有了仓库,就要有专门的人员从外面采购物品来存到仓库,针对这个场景,我们抽取出三个角色部门:销售部门、仓库苦闷、采购部门。这三个部门之间是相互依赖的。采购部门要根据销售部门的销售情况确定是否采购,也需要根据仓库的库存量决定是否采购,而销售部门只有
-
设计模式(六):责任链设计模式
2023-12-28
65432 浏览
上图把
-
关注我们
扫一扫关注公众号
添加我为好友,拉您入交流群!
-