技术教育社区
www.teccses.org

Go语言设计模式(双色版)

封面

作者:廖显东

页数:312

出版社:电子工业出版社

出版日期:2023

ISBN:9787121450068

电子书格式:pdf/epub/txt

内容简介

本书聚焦于Go语言设计模式的知识与应用。全书共6章,分别为设计模式入门、创建型设计模式、结构型设计模式、行为型设计模式、设计模式扩展、设计模式与软件架构。本书简洁而不失技术深度,内容覆盖Go语言的主流设计模式和软件架构,以极简的文字介绍了复杂的案例,是学习Go语言设计模式和软件架构的实用教程。

作者简介

廖显东,高级软件架构师,全栈开发者,技术极客,Gopher,开源爱好者。
毕业于河海大学,先后就职于苏宁易购等多家大型公司。具有多年软件开发与团队管理经验,精通Java、JavaScript、C、C++、C#、Python、PHP等开发语言。对Go、Rust等开发语言有深入实践和研究。对大型电子商务系统开发、高并发架构、分布式架构、微服务、大数据、人工智能算法等领域有深入实践和研究。
曾出版《GO?Web编程实战派——从入门到精通》

本书特色

Go设计模式可以让开发者避免重新发明轮子,提高开发者的工作效率。设计模式还提供了一种有用的通用语言,用于在与他人讨论或在更大的团队中管理代码时概念化重复的问题和解决方案。
(1)一线技术,突出实战。
(2)零基础入门,循序渐进。
(3)丰富图示,更易理解。
(4)突出实战,快速突击。
(5)实战方案可以二次开发,用于进行实战部署。

目录

第1章 设计模式入门 / 1

1.1 设计模式介绍 / 1

1.1.1 初识设计模式 / 1

1.1.2 怎样使用设计模式 / 2

1.2 UML基础知识 / 3

1.2.1 什么是UML / 3

1.2.2 UML事物 / 6

1.2.3 UML关系 / 8

1.2.4 UML图 / 9

1.3 设计模式的六大原则 / 19

1.4 回顾与启示 / 21

第2章 创建型设计模式 / 22

2.1 单例模式 / 22

2.1.1 单例模式简介 / 22

2.1.2 Go语言实战 / 26

2.1.3 优缺点分析 / 27

2.2 工厂方法模式 / 28

2.2.1 工厂方法模式简介 / 28

2.2.2 Go语言实战 / 30

2.2.3 优缺点分析 / 34

2.3 抽象工厂模式 / 35

2.3.1 抽象工厂模式简介 / 35

2.3.2 Go语言实战 / 37

2.3.3 优缺点分析 / 43

2.4 生成器模式 / 44

2.4.1 生成器模式简介 / 44

2.4.2 Go语言实战 / 47

2.4.3 优缺点分析 / 51

2.5 原型模式 / 52

2.5.1 原型模式简介 / 52

2.5.2 Go语言实战 / 54

2.5.3 优缺点分析 / 57

2.6 对象池模式 / 58

2.6.1 对象池模式简介 / 58

2.6.2 Go语言实战 / 61

2.6.3 优缺点分析 / 64

2.7 回顾与启示 / 65

第3章 结构型设计模式 / 66

3.1 组合模式 / 66

3.1.1 组合模式简介 / 66

3.1.2 Go语言实战 / 70

3.1.3 优缺点分析 / 73

3.2 适配器模式 / 73

3.2.1 适配器模式简介 / 73

3.2.2 Go语言实战 / 78

3.2.3 优缺点分析 / 80

3.3 桥接模式 / 81

3.3.1 桥接模式简介 / 81

3.3.2 Go语言实战 / 85

3.3.3 优缺点分析 / 88

3.4 装饰器模式 / 89

3.4.1 装饰器模式简介 / 89

3.4.2 Go语言实战 / 93

3.4.3 优缺点分析 / 95

3.5 外观模式 / 96

3.5.1 外观模式简介 / 96

3.5.2 Go语言实战 / 99

3.5.3 优缺点分析 / 104

3.6 享元模式 / 105

3.6.1 享元模式简介 / 105

3.6.2 Go语言实战 / 108

3.6.3 优缺点分析 / 112

3.7 代理模式 / 113

3.7.1 代理模式简介 / 113

3.7.2 Go语言实战 / 116

3.7.3 优缺点分析 / 119

3.8 回顾与启示 / 120

第4章 行为型设计模式 / 121

4.1 策略模式 / 121

4.1.1 策略模式简介 / 121

4.1.2 Go语言实战 / 124

4.1.3 优缺点分析 / 128

4.2 责任链模式 / 129

4.2.1 责任链模式简介 / 129

4.2.2 Go语言实战 / 132

4.2.3 优缺点分析 / 136

4.3 命令模式 / 137

4.3.1 命令模式简介 / 137

4.3.2 Go语言实战 / 141

4.3.3 优缺点分析 / 144

4.4 迭代器模式 / 144

4.4.1 迭代器模式简介 / 144

4.4.2 Go语言实战 / 148

4.4.3 优缺点分析 / 151

4.5 中介者模式 / 151

4.5.1 中介者模式简介 / 151

4.5.2 Go语言实战 / 155

4.5.3 优缺点分析 / 159

4.6 备忘录模式 / 160

4.6.1 备忘录模式简介 / 160

4.6.2 Go语言实战 / 163

4.6.3 优缺点分析 / 166

4.7 观察者模式 / 167

4.7.1 观察者模式简介 / 167

4.7.2 Go语言实战 / 170

4.7.3 优缺点分析 / 173

4.8 状态模式 / 174

4.8.1 状态模式简介 / 174

4.8.2 Go语言实战 / 177

4.8.3 优缺点分析 / 181

4.9 模板方法模式 / 181

4.9.1 模板方法模式简介 / 181

4.9.2 Go语言实战 / 185

4.9.3 优缺点分析 / 188

4.10 访问者模式 / 188

4.10.1 访问者模式简介 / 188

4.10.2 Go语言实战 / 193

4.10.3 优缺点分析 / 198

4.11 回顾与启示 / 198

第5章 设计模式扩展 / 199

5.1 空对象模式 / 199

5.1.1 空对象模式简介 / 199

5.1.2 Go语言实战 / 202

5.1.3 优缺点分析 / 205

5.2 规格模式 / 205

5.2.1 规格模式简介 / 205

5.2.2 Go语言实战 / 210

5.2.3 优缺点分析 / 215

5.3 领域驱动设计 / 215

5.3.1 领域驱动设计简介 / 215

5.3.2 Go语言实战 / 225

5.3.3 优缺点分析 / 239

5.4 回顾与启示 / 239

第6章 设计模式与软件架构 / 240

6.1 软件架构 / 240

6.1.1 软件架构简介 / 240

6.1.2 软件架构与设计模式的区别 / 243

6.1.3 如何选择软件架构 / 246

6.2 MVC架构 / 247

6.2.1 MVC架构简介 / 247

6.2.2 Go语言实战 / 249

6.2.3 优缺点分析 / 255

6.3 RPC架构 / 256

6.3.1 RPC架构简介 / 256

6.3.2 Go语言实战 / 257

6.3.3 优缺点分析 / 265

6.4 三层架构 / 266

6.4.1 三层架构简介 / 266

6.4.2 Go语言实战 / 267

6.4.3 优缺点分析 / 277

6.5 微服务架构 / 278

6.5.1 微服务架构简介 / 278

6.5.2 Go语言实战 / 281

6.5.3 优缺点分析 / 289

6.6 事件驱动架构 / 291

6.6.1 事件驱动架构简介 / 291

6.6.2 Go语言实战 / 292

6.6.3 优缺点分析 / 299

6.7 回顾与启示 / 300

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Go语言设计模式(双色版)》
Article link:https://www.teccses.org/1441399.html