Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider replacing Guice with a faster DI lib #217

Closed
cjbrooks12 opened this issue Dec 29, 2018 · 4 comments
Closed

Consider replacing Guice with a faster DI lib #217

cjbrooks12 opened this issue Dec 29, 2018 · 4 comments
Labels
refactor Task Type: Refactoring, code cleanup, etc. under consideration Issue Status: Under consideration

Comments

@cjbrooks12
Copy link
Contributor

Guice has served Orchid quite well, but its slow startup time makes me wonder if another DI lib could do better. As nearly all of Orchid's DI is just pure JSR-330 injection, it should be fairly easy to swap Guice out for another lib. I am interested in Kodein, but really have no idea how it will affect performance. Faster startup times are not worth slower overall build times.

@cjbrooks12 cjbrooks12 added under consideration Issue Status: Under consideration refactor Task Type: Refactoring, code cleanup, etc. labels Jan 9, 2019
@cjbrooks12
Copy link
Contributor Author

The more I look into alternatives, the more I'm leaning toward Koin. It doesn't seem to support JSR 330 natively, but there might be an extension for it or something along those lines. It's API just seems to clean and natural, and would feel much less "magical" than Guice. Might help to move completely toward more of a pipeline/factory-driven API rather than purely declarative as it is now.

@jmfayard
Copy link
Contributor

jmfayard commented Oct 2, 2019

Koin is good, I am using it as well

@cjbrooks12
Copy link
Contributor Author

Yeah, I've been using it more and more on my Android projects, it's really nice. The main blocker for using it here is a lack of support for multibindings. I've done some hacks to get something like it to work, but I'm waiting for a native multibindings solution to be implemented before making the change here.

@cjbrooks12 cjbrooks12 changed the title Consider replacing Guice with a faster DI lib (maybe Kodein) Consider replacing Guice with a faster DI lib Nov 19, 2019
@cjbrooks12
Copy link
Contributor Author

Moved to #336

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactor Task Type: Refactoring, code cleanup, etc. under consideration Issue Status: Under consideration
Projects
None yet
Development

No branches or pull requests

2 participants