命令分发模式 (colobu.com)

【简介】

文章介绍了命令调度器模式(Command Dispatcher Pattern)的应用,该模式能将命令和其对应的处理逻辑分离,提升代码的可扩展性和可维护性。作者展示了如何在项目中使用Rust实现这种设计模式,包括如何将不同的命令注册到调度器,并动态调用相应的命令处理程序。文章提供了具体的代码示例,帮助读者理解如何在实践中应用该模式来简化复杂的业务逻辑。

点击查看原文 >>

@技术头条 2024-08-06 07:54 / 原作者微博:@colobu / 0个评论
要不要再学学下面的文章?
Linux中使用tar压缩命令排除文件 (lisenhui.cn)
众所周知tar命令是在Linux系统中最为常用来解压缩文件的命令之一,之前大部分时候都直接用它来压缩备份或转移的文件内容,因此也未过多关注过它在压缩时的其它可选参数使用。但最近在转移文件遇到其占用空间比较大,考虑到里面有些内容并不是必须,于是想到如何来使用tar命令参数来实现,经过多次尝试,找到了个解决办法——使用exclude-from参数,可灵活控制不需要压缩文件,然后顺手做个记录分享。
by @技术头条 2023-12-26 22:19 查看详情
让 Nginx 将 HTTP 请求转发到 HTTPS 安全模式 (lisenhui.cn)
在某次博主的交流讨论时,忽然间发现自己站点原定让 HTTP 转发 HTTPS 的支持功能,实际上并不没有生效。如果是直接输入域名访问的话,那么会出现 400 的错误页面。当初为了让全站支持 HTTPS 也是耗费了不少精力,没想到却是这个结果。
by @技术头条 2023-12-11 23:23 查看详情
单例模式都在这了 (example.com)
Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。

它的核心在于,单例模式可以保证一个类仅创建一个实例,并提供一个访问它的全局访问点。

一些管理器和控制器常被设计成单例模式 。
by @技术头条 2023-12-11 23:08 查看详情
基于模式挖掘的可靠性治理探索 (tech.meituan.com)
本文整理自美团技术沙龙第77期《美团亿级流量系统的质量风险防控和稳定性治理实践》。本文介绍了基于模式挖掘的可靠性治理探索,为通过技术手段解决该领域代表性问题开启了新的思路。文章第一部分介绍可靠性治理的痛点;第二部分引入模式的概念;第三部分讨论新基建下的新尝试;第四部分分享三个典型的实践案例。
by @技术头条 2023-10-24 23:56 查看详情
攻击者通过 Freeze.rs 和 SYK 密码器进行恶意软件分发 (paper.seebug.org)
在本文中,我们将深入研究用于交付Rust-lang注射器(SYK密码器)的初始攻击方法,并进一步探索攻击的后续阶段。
by @技术头条 2023-10-18 00:15 查看详情
真实世界的Go设计模式 - 对象池模式 (colobu.com)
对象池(object pool pattern)是一种设计模式。一个对象池包含一组已经初始化过且可以使用的对象,而可以在有需求时创建和销毁对象。池的用户可以从池子中取得对象,对其进行操作处理,并在不需要时归还给池子而非直接销毁它。这是一种特殊的工厂对象。

若初始化、实例化的代价高,且有需求需要经常实例化,但每次实例化的数量较少的情况下,使用对象池可以获得显著的效能提升。从池子中取得对象的时间是可预测的,但新建一个实例所需的时间是不确定。

另外,利用对象池,我们可以重用对象,减少对象的分配,对于垃圾回收的编程语言,也是一种提高性能的手段。
by @技术头条 2023-09-10 23:38 查看详情
真实世界的Go设计模式 - 原型模式 (colobu.com)
*原型模式(Prototype Pattern)是创建型模式的一种,其特点在于通过“复制”一个已经存在的实例来返回新的实例,而不是新建实例。被复制的实例就是我们所称的“原型”,这个原型是可定制的。
如果你有一个对象,并希望生成与其完全相同或者类似的一个复制品,你该如何实现呢?首先你必须新建一个属于相同类的对象,或者类似的对象,然后你必须遍历原始对象的所有成员变量,并将成员变量值复制到新对象中。在Go生态圈中,我们常常使用下面的库来做这份工作。
by @技术头条 2023-09-10 23:32 查看详情
内网穿透最好用的还得是ngrok,一行命令就搞定! (blog.didispace.com)
最近在写支付的东西,调试时候需要让支付平台能够回调本地接口来更新支付成功的状态。但由于开发机器没有公网IP,所以需要使用内网穿透来让支付平台能够成功访问到本地开发机器,这样才能更高效率的进行调试。
by @技术头条 2023-08-18 22:58 查看详情
单例模式 和 惰性初始化模式 (colobu.com)
在面向对象编程语言中,单例模式(Singleton pattern)确保一个类只有一个实例,并提供对该实例的全局访问。

那么Go语言中,单例模式确认一个类型只有一个实例,并提供对改实例的全局访问,一般就是直接访问全局变量即可。

比如Go标准库中的os.Stdin、os.Stdout、os.Stderr分别代表标准输入、标准输出和标准错误输出。
by @技术头条 2023-07-30 21:36 查看详情
真实世界的Go设计模式 - 工厂模式 (colobu.com)
工厂模式是一种创建型模式,就是用来创建新对象的一种设计模式,它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。

23种设计模式中包含抽象工厂模式,工厂方法模式,其他也有人总结出简单工厂模式。这个工厂大量的依赖接口、抽象类和具体的类实现。在Go中,才不会有这么复杂的工厂创建模式,Go中最常见的工厂模式类似简单工厂模式,而且一般都是通过New或者NewXXX来实现。
by @技术头条 2023-07-30 17:36 查看详情