【文件属性】:
文件名称:dingo:Go(golang)中生成的依赖项注入容器
文件大小:35KB
文件格式:ZIP
更新时间:2021-05-03 03:26:10
go golang dependency-injection container code-generation
用于go程序(golang)的依赖项注入容器的生成。
Dingo是代码生成器。 它基于生成依赖项注入容器。
它比单独使用更好,因为:
生成的容器具有类型化的方法来检索每个对象。 您无需先投射它们即可使用它们。 这意味着更少的运行时错误。
定义很容易编写。 可以猜测一些依赖项,从而允许使用更短的定义。
缺点是必须生成代码。 但这可以通过使用文件监视程序来补偿。
目录
基于功能构建
参数
关闭功能
避免自动填充
生成的容器
基本容器
其他方法
记录错误
C功能
检索功能
从v3升级
依存关系
该模块取决于github.com/sarulabs/di/v2 。 您将需要它来生成和使用依赖项注入容器。
与di的相似之处
Dingo与sarulabs / di非常相似,因为它主要围绕在它周围。 该文档主要涵盖了两个库之间的差异。 在继续之前,您可能应该阅读di文档。
设置
代码结构
【文件预览】:
dingo-master
----paramScanner.go(5KB)
----scanner.go(5KB)
----.gitignore(20B)
----go.mod(183B)
----nameFormatter.go(1KB)
----templates()
--------container.tmpl.go(10KB)
--------writer.go(1KB)
--------defs.tmpl.go(3KB)
----.travis.yml(56B)
----provider.go(3KB)
----LICENSE(1KB)
----generation.go(2KB)
----go.sum(3KB)
----README.md(14KB)
----tests()
--------app()
--------run_tests.sh(359B)
----dingo.go(2KB)
----scan.go(2KB)
----typeManager.go(6KB)