-
Notifications
You must be signed in to change notification settings - Fork 198
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
Difference with other C++ Dependency Injection libraries #5
Comments
I will include a page comparing Fruit to other C++ DI libraries in the Fruit website, thanks for the idea. The TL;DR version is that Wallaroo is a completely different beast (run-time DI) while Boost.DI is more similar to Fruit, but there are some differences in the features (some are Fruit-only, some Boost.DI-only) and in performance (I expect Fruit to have noticeably faster compile time and slightly faster run-time, but I need to write/run some benchmarks to have actual data on this). |
Cool. That's very helpful. Thanks. |
Thank you for Fruit. I'm also interested in a comparison with hypodermic. |
Hypodermic is also one of the runtime DI libraries, it's more similar to Wallaroo than to Fruit. |
ITNOA @poletti-marco thanks for information, and what about autowiring? |
Thanks for the pointer. It's the first time I hear about that.
I looked at the documentation but it's somewhat scarce, so it's hard for me
to compare I'm afraid.
…On Fri, 5 Apr 2019, 20:02 soroshsabz, ***@***.***> wrote:
ITNOA
@poletti-marco <https://github.com/poletti-marco> thanks for information,
and what about autowiring <https://github.com/leapmotion/autowiring>?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ABeeF3mzQWSLugi7Sz630UGqlzFyhaXAks5vd53OgaJpZM4DuZkG>
.
|
And what about Kangaru? Seems to be pretty complete: https://github.com/gracicot/kangaru/wiki |
From a quick look at the documentation it also seems to be runtime DI, so using an approach similar to Wallaroo and Hypodermic. They provide a debugging facility for 1 class of errors: But you need to modify your code in order to use it. Fruit (and Boost.DI) give you the guarantee that certain classes of errors are always detected at compile-time, so if your code builds you're sure they won't happen at runtime. E.g. missing bindings (both libraries) or binding dependency cycles (Fruit only). |
Hi, I notice that there are another C++ DI libraries like wallaroo, and Boost.DI. What's the difference between fruit and them? How this library been used in Google internally?
The text was updated successfully, but these errors were encountered: