- 2025
-
理解Go语言中的依赖注入
理解 Go 语言中的依赖注入:不仅仅是技巧,更是一种思想 在你构建一个 Go 应用的时候,是不是经常会碰到这种初始化逻辑: db := NewDatabase(cfg) logger := NewLogger() repo := NewRepo(db) svc := NewService(repo, logger) handler := NewHandler(svc) 看起来没什么问...
阅读全文→
-
Go语言Embedding系列 -- 04. embed.FS 文件系统接口及高级使用
embed.FS 文件系统接口及高级使用 Go语言Embedding系列 – 04. embed.FS 文件系统接口及高级使用 在本系列前几篇文章中,我们已经了解了 go:embed 的基本语法和用法,但你可能会有这样一个问题: “我用 //go:embed 嵌入了一堆文件,然后呢?我怎么像操作本地文件系统一样去读它们?” 这正是 embed.FS 的使命。 一、...
阅读全文→
-
Go语言Embedding 系列 -- 03. go embed语法与应用全攻略
go:embed语法与应用全攻略 系列专题:Go语言Embedding 系列 —— go:embed语法与应用全攻略 随着 Go 1.16 的发布,embed 包成为标准库的一部分,为开发者提供了将静态资源直接嵌入可执行文件的能力。无论是构建 Web 应用、CLI 工具,还是部署时希望避免依赖外部文件,go:embed 都是你不可忽视的利器。 一、基本语法详解 1.1 引...
阅读全文→
-
Go语言Embedding 系列 -- 02. 接口嵌入设计与模式
接口嵌入(Interface Embedding)设计与模式 系列专题:Go语言Embedding 系列 —— 接口嵌入篇 1. 什么是接口嵌入? 接口嵌入是 Go 语言接口设计中的一种组合方式。它允许在一个接口类型中嵌入(组合)一个或多个接口,从而实现接口的扩展和复用。 通过接口嵌入,新的接口会包含所有被嵌入接口的方法集合,等价于将所有嵌入接口的方法“合并”到一个接口中...
阅读全文→
-
Go语言Embedding 系列 -- 01. 结构体嵌入详解与实战
结构体嵌入(Struct Embedding)详解与实战 系列专题:Go语言Embedding 系列 —— 结构体嵌入篇 1. 什么是结构体嵌入? 结构体嵌入是 Go 语言提供的一种组合方式。它允许在一个结构体中匿名嵌入另一个结构体,从而实现字段和方法的“提升”,即外层结构体可以直接访问内层结构体的字段和方法,而无需显式调用内层字段名。 示例: type A struc...
阅读全文→