golang-runtime-di
nject
golang-runtime-di | nject | |
---|---|---|
1 | 1 | |
2 | 28 | |
- | - | |
3.6 | 3.9 | |
almost 2 years ago | 11 months ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
golang-runtime-di
-
Is dependency injection in Go a thing?
I wrote (and I am using) a reflection based library like dig: https://github.com/dbsystel/golang-runtime-di
nject
-
godi a New Dependency Injection library - feedback welcome
For those who commented about Java & DI: I used DI with Java and hated it. It seemed to be simply a complex interface around global variables. Please take a look at [nject]([https://github.com/muir/nject]. The idea is fundamentally different: you create an injection chain out of reusable components. I won't say that it makes DI simple, but it does alter the cost/benefit ratio such that DI becomes very advantageous for several uses.
What are some alternatives?
wire - Compile-time Dependency Injection for Go
linker - Dependency Injection and Inversion of Control package
goioc/di - Simple and yet powerful Dependency Injection for Go
dig - A reflection based dependency injection toolkit for Go.
gocontainer - Simple Dependency Injection Container
fx - A dependency injection based application framework for Go.
container - A lightweight yet powerful IoC dependency injection container for the Go programming language
kinit - GO Dependency Injection
di - 🛠 A full-featured dependency injection container for go programming language.
nject - Go dependency injection: nject & npoint
do - ⚙️ A dependency injection toolkit based on Go 1.18+ Generics.
di - DI container library that is focused on clean API and flexibility.