dig
boot
Our great sponsors
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.
dig
- Injeção de dependência em Go
-
Go doesn’t do any magical stuff and I love that
Ironically given Spring’s history, you do have dependency injection in Go. But you don’t need to use it unless there’s a clear benefit. Most code reviewers would be appalled if you pulled in dig into a project that didn’t need it.
-
What's the best dependency injection framework / methodology for Golang for the enterprise?
Interesting, one of my friends works at a big tech company and they said they passed on Wire and ultimately decided on Uber Dig https://github.com/uber-go/dig. But looking at that lib it seems a bit anti-paradigm of the goal of the Golang language (no magic/obfuscated code running in the background, what you see is what you get style coding)
-
Is dependency injection in Go a thing?
It's a library to help with DI, by Uber: https://github.com/uber-go/dig
- Alternative for Monkey patching
boot
- boot-go/boot: Configuration and dependency injection
- What's the best dependency injection framework / methodology for Golang for the enterprise?
-
Hooks: Simple, type-safe hook system for Go
Reminds me also to https://github.com/boot-go/boot, which supports Events and DI.
-
Adding a new implementation without having to touch an existing code - how?
Component Based Development lets you change (override) a defined component (with implementation). e.g. boot-go is supporting this.
- boot-go -- component-based development for golang
-
boot-go
boot-go accentuate component-based development (CBD).
What are some alternatives?
fx - A dependency injection based application framework for Go.
dingo - Generated dependency injection containers in go (golang)
wire - Compile-time Dependency Injection for Go
broadcast - Notification broadcaster library
wire - Strict Runtime Dependency Injection for Golang
hooks - Simple, type-safe hook system to enable easier modularization of your Go code.
di - 🛠 A full-featured dependency injection container for go programming language.
hooks-example - Example of a modular monolithic codebase in Go using hooks and dependency injection.
container - A lightweight yet powerful IoC dependency injection container for the Go programming language
libkv - Distributed key/value store abstraction library
gocontainer - Simple Dependency Injection Container
go-events - :mega: Pure nodejs EventEmmiter for the Go Programming Language.