Google Guice
Developer(s) | |
---|---|
Stable release | 7.0.0
/ May 12, 2023[1] |
Repository | github |
Written in | Java |
Type | Dependency injection framework |
License | Apache License 2.0 |
Website | github |
Google Guice (pronounced like "juice")[2] is an open-source software framework for the Java platform developed by Bob Lee and Kevin Bourrillion at Google and released under the Apache License. It provides support for dependency injection using annotations to configure Java objects.[3] Dependency injection is a design pattern whose core principle is to separate behavior from dependency resolution.
Guice allows implementation classes to be bound programmatically to an interface, then injected into constructors, methods or fields using an @Inject
annotation. When more than one implementation of the same interface is needed, the user can create custom annotations that identify an implementation, then use that annotation when injecting it.
Being the first generic framework for dependency injection using Java annotations in 2008, Guice won the 18th Jolt Award for best Library, Framework, or Component.[3][4]
See also
References
- ^ "Guice510 · google/guice Wiki". GitHub. Retrieved 2022-05-12.
- ^ "google-guice - Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 5 and above, brought to you by Google". Code.google.com. Google Project Hosting. 2007-03-23. Retrieved 2013-11-24.
- ^ a b Yuan, Michael. "Guice (Google)". Retrieved 2010-04-09.
- ^ "18th Annual Jolt Award winners".
Further reading
- Vanbrabant, Robbie (April 21, 2008), Google Guice: Agile Lightweight Dependency Injection Framework (1st ed.), Apress, p. 192, ISBN 978-1-59059-997-6