首页
博客
源码
资源
博客
源码
写文章
发布博客
发布资源
登录
X
设计模式
相关资讯
热门
最新
后端
01-01 08:00
后端
设计模式——单例模式
设计模式——单例模式,设计模式——单例模式单例模式,顾名思义就是一个类只能有一个实例。单例模式根据实例的创建的时间大致可以分为两类——饿汉式单例和懒汉式单例。饿汉式单例饿汉式单例,是指在类初始化的时候就创建实例,这样做有一个好处,就是保证在获取实例的时候可以保证线程安全而且还简单,即多个线程获取到的都是同一个实例。但这样做也有一个缺点,就是即使不用实例,实例也会创建,这样就会造成内存浪费。饿汉式单
75
代码人生
01-01 08:00
代码人生
设计模式连更(3)-模板方法模式
设计模式连更(3)-模板方法模式,模板方法模式概述模板方法模式是一种行为设计模式,它在超类中定义了一个算法的框架,允许子类在不修改结构的情况下重写算法的特定步骤解决方案模板方法模式建议将算法分解为一系列步骤,然后将这些步骤改写为方法,最后在模板方法中依次调用这些方法一般有两种类型的步骤抽象步骤必须由各个子类来实现可选步骤已有一些默认实现,但仍可在需要时进行重写还有一种名为钩子的步骤。钩子是内容为空
74
人工智能
01-01 08:00
人工智能
设计模式之JavaScript实现单例模式
设计模式之JavaScript实现单例模式,单例模式这种模式的作用就是将特定对象的实例对象数量限制为一个。这种模式在JavaScript中其实可以应用的很广泛,他的核心就是保证只有一个实例,并给全局使用。那为什么不使用全局变量呢,原因就是全局变量容易造成污染,平时开发还是得减少这些风险。实现思路定义一个Singleton对象负责创建和管理对象,Singleton中定义了getInstance()用
73
后端
01-01 08:00
后端
设计模式-访问者模式(Visitor Pattern)
设计模式-访问者模式(Visitor Pattern),定义封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下,定义作用于这些元素的新操作。主要将数据结构与数据操作分离。优缺点优点:1、符合单一职责原则。2、优秀的扩展性。3、灵活性。缺点:1、具体元素对访问者公布细节,违反了迪米特原则。2、具体元素变更比较困难。3、违反了依赖倒置原则,依赖了具体类,没有依赖抽象。使用场
73
后端
01-01 08:00
后端
设计模式如何提升 vivo 营销自动化业务扩展性 | 引擎篇01
设计模式如何提升 vivo 营销自动化业务扩展性 | 引擎篇01,在《vivo营销自动化技术解密|开篇》中,我们从整体上介绍了vivo营销自动化平台的业务架构、核心业务模块功能、系统架构和几大核心技术设计。本次带来的是系列文章的第2篇,本文详细解析设计模式和相关应用如何帮助营销自动化业务提升系统扩展性,以及实践过程中的思考和总结。一、引言营销业务本身极具复杂多变性,特别是伴随着数字化营销蓬勃发展的
73
后端
01-01 08:00
后端
设计模式
设计模式,简单介绍原则单一职责原则复制代码最少知识原则复制代码开放-封闭原则复制代码接口和面向接口编程复制代码代码重构复制代码设计模式单例模式定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点应用:线程池、全局缓存、浏览器中的window、弹框...实现:用一个变量标识是否已经创建过对象,如果是,则在下一次获取该实例时,直接返回之前创建的对象优点:节约资源,保持访问一致性,减小垃圾回收机制
72
后端
01-01 08:00
后端
设计模式-工厂模式
设计模式-工厂模式,现在需要开发一个系统,里面存在不同的角色,最常见的就是管理员、员工的角色,然后需要根据不同的角色分发不同的权限拿到需求之后立马撸代码:classPerson{constructor(name,permission){this.name=name;this.permission=permission;}}/***管理员*/classAdminextendsPerson{const
69
后端
01-01 08:00
后端
设计模式【synchronize+volatile双重检查机制的懒汉式单例】
设计模式【synchronize+volatile双重检查机制的懒汉式单例】,前言上文提到了两种懒汉式单例加载问题,针对多线程我提出了一种加锁的方式避免重复实例化。本来以为就解决了问题。虽然测试中我没有发现问题,但是请教了一个老前辈他给我指出了其中的不足。问题分析加锁就是让获取对象时能够线性执行。但是因为我们锁是加载if上的。当A线程获取锁成功时,并且完成了对象的创建后,B线程中对象并没有及时的得
69
后端
01-01 08:00
后端
设计模式行为型:备忘录模式(MementoPattern)
在不破坏封装的前提下,捕获对象的内部状态,并在对象外存储这个内部状态,以便将来回滚到这一状态。 结构图 锁用来对数据进行锁定,我们可以从锁定对象的粒度大小来对锁进行划分,分别为行锁、页锁和表锁。 角...
68
后端
01-01 08:00
后端
设计模式——创建型(5种)
设计模式——创建型(5种),抽(抽象工厂方法模式)工(工厂方法模式)单(单例模式)建(建造者模式)原(原型模式)抽象工厂方法模式提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。例子:不同厂家生产不同的电脑abstractclassComputer{abstractvalname:String}classDell:Computer(){overridevalname="Dell"
67
«
1
2
3
4
5
6
7
»