Wire
wire是google開(kāi)源的依賴(lài)注入框架铛绰。
安裝
$ go get github.com/google/wire/cmd/wire
上面的命令會(huì)在$GOPATH/bin中生成一個(gè)可執(zhí)行程序wire潮酒,把$GOPATH/bin加入系統(tǒng)環(huán)境變量$PATH中晤揣,就可以直接在命令行中執(zhí)行wire命令霉翔。
使用
項(xiàng)目在初始化的時(shí)候需要初始化很多依賴(lài),如果相關(guān)依賴(lài)很多稚叹,就可以使用wire捧弃。
例如:
使用wire
新建文件wire.go
運(yùn)行wire命令,則可以生成文件wire_gen.go止喷。
就可以直接調(diào)用InitUserServer即可馆类。
總結(jié)
通過(guò)wire可以省去一些初始化的代碼,而且相關(guān)方法之間的調(diào)度關(guān)系也會(huì)比較清晰弹谁。