https://time.geekbang.org/column/article/386238
你好,我是孔令飞,今天我们来聊聊 Go 项目开发中常用的设计模式。
在软件开发中,经常会遇到各种各样的编码场景,这些场景往往重复发生,因此具有典型性。针对这些典型场景,我们可以自己编码解决,也可以采取更为省时省力的方式:直接采用设计模式。
设计模式是啥呢?简单来说,就是将软件开发中需要重复性解决的编码场景,按最佳实践的方式抽象成一个模型,模型描述的解决方法就是设计模式。使用设计模式,可以使代码更易于理解,保证代码的重用性和可靠性。
在软件领域,GoF(四人帮,全拼 Gang of Four)首次系统化提出了 3 大类、共 25 种可复用的经典设计方案,来解决常见的软件设计问题,为可复用软件设计奠定了一定的理论基础。
从总体上说,这些设计模式可以分为创建型模式、结构型模式、行为型模式 3 大类,用来完成不同的场景。这一讲,我会介绍几个在 Go 项目开发中比较常用的设计模式,帮助你用更加简单快捷的方法应对不同的编码场景。其中,简单工厂模式、抽象工厂模式和工厂方法模式都属于工厂模式,我会把它们放在一起讲解。
首先来看创建型模式(Creational Patterns),它提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
10 | 设计方法:怎么写出优雅的 Go 项目?
11 | 设计模式:Go常用设计模式概述
27 | 权限模型:5大权限模型是如何进行资源授权的?
28 | 控制流(上):通过iam-apiserver设计,看Web服务的构建
29|控制流(下):iam-apiserver服务核心功能实现讲解
特别放送 | IAM排障指南
该试读文章来自《Go 语言项目开发实战》,如需阅读全部文章, 请购买文章所属专栏,新⼈⾸单¥68
登录 后留言