每日一博 | 实践 GoF 的设计模式:工厂方法模式
摘要:工厂方法模式(Factory Method Pattern)将对象创建的逻辑封装起来,为使用者提供一个简单易用的对象创建接口,常用于不指定对象具体类型的情况下创建对象的场景。 本文分享自华为云社区《【Go实现】实践GoF的23种设计模式:工厂方法模式》,作者: 元闰子。 简述 工厂方法模式(Factory Method Pattern)跟上一篇讨论的建造者模式类似,都是将对象创建的逻辑封装起来,为使用者提供一个简单易用的对象创建接口。两者在应用场景上稍有区别,建造者模式常用于需要传递多个参数来进行实例化的场景;工厂方法模式常用于不指定对象具体类型的情况下创建对象的场景。 UML 结构 代码实现 示例 在简单的分布式应用系统(示例代码工程)中,我们设计了 Sidecar 边车模块, Sidecar 的作用是为了给原生的 Socket 增加额外的功能,比如流控、日志等。 Sidecar 模块的设计运用了装饰者模式,修饰的是 Socket 。所以客户端其实是把 Sidecar 当成是 Socket 来使用了,比如: // demo/network/http/http_client.go...
