- Published on
GoLang 设计模式之单例模式 (Singleton Pattern)
现实世界的例子:一次只能有一个国家的总统。 简单来说:确保只创建特定类的一个对象。 单例模式实际上被认为是反模式,应该避免过度使用它。它不一定是坏的,可能有一些有效的用例,但应谨慎使用,因为它在您的应用程序中引入了一个全局状态,并且在一个地方更改它可能会影响其他区域,并且它可能变得非常难以调试。关于它们的另一个坏处是它使你的代码紧密耦合加上嘲弄单例可能很困难。
Golang 相关分类
现实世界的例子:一次只能有一个国家的总统。 简单来说:确保只创建特定类的一个对象。 单例模式实际上被认为是反模式,应该避免过度使用它。它不一定是坏的,可能有一些有效的用例,但应谨慎使用,因为它在您的应用程序中引入了一个全局状态,并且在一个地方更改它可能会影响其他区域,并且它可能变得非常难以调试。关于它们的另一个坏处是它使你的代码紧密耦合加上嘲弄单例可能很困难。
现实世界的例子:记得多莉?被克隆的羊!让我们不详细介绍,但关键点在于它完全是关于克隆的 简单来说:通过克隆基于现有对象创建对象。 简而言之,它允许您创建现有对象的副本并根据需要进行修改,而不是从头开始创建对象并进行设置。
在 Golang 中:当一个方法有多个变量的时候,我们在调用该方法的时候可能会因为参数的顺序、个数错误,而造成调用错误或者不能达到我们预期的目的。针对这个问题,我们的建造设计模式可以完美的解决这个问题
抽象工厂模式提供了一种封装一组具有共同主题但没有指定其具体类的单个工厂的方法。简单来说; 将个人但相关/依赖工厂分组在一起而不指定其具体类别的工厂。现实世界的例子:你可能需要一个有不同种类特色的家伙来安装门,例如木门木匠,铁门焊机等。你可以看到门之间存在依赖关系,木门需要木匠,铁门需要焊工等
现实世界的例子:考虑招聘经理的情况。一个人不可能对每个职位进行面试,根据职位空缺,她必须决定并将面试步骤委托给不同的人。 简单来说:它提供了一种将实例化逻辑委托给子类的方法
简单工厂模式是属于创建型模式,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是 GoLang 最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。
备案号:湘ICP备2020019075号 © 2020 yxx All rights reserved. | my github