https://github.com/d-led/test-ioc-cpp
hello world c++ dependency injection (ioc) containers
https://github.com/d-led/test-ioc-cpp
Last synced: about 1 year ago
JSON representation
hello world c++ dependency injection (ioc) containers
- Host: GitHub
- URL: https://github.com/d-led/test-ioc-cpp
- Owner: d-led
- Created: 2013-12-23T18:58:51.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2016-10-13T19:46:36.000Z (over 9 years ago)
- Last Synced: 2025-04-14T04:15:01.855Z (about 1 year ago)
- Language: C++
- Homepage:
- Size: 166 KB
- Stars: 9
- Watchers: 3
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
test ioc c++
============
hello world c++ ioc containers
[](https://travis-ci.org/d-led/test-ioc-cpp)
This project is a series of hello world examples with the intent of feature comparison of c++ Dependency Injection Frameworks.
The frameworks currently aspiring:
- [wallaroo](https://code.google.com/p/wallaroo/)
- [sauce](https://github.com/phs/sauce)
- [~~hypodermic~~](https://code.google.com/p/hypodermic) (currently doesn't build with clang-500.2.79 on MacOS)
- [pococapsule](http://www.pocomatic.com/docs/whitepapers/pococapsule-cpp/)
- [dicpp](https://bitbucket.org/cheez/dicpp/wiki/Home)
- [di](https://github.com/krzysztof-jusiak/di)
- [infectorpp](https://code.google.com/p/infectorpp/)
- [fruit](https://github.com/google/fruit)
Build files are generated using the convenience wrapper for [premake](http://industriousone.com/premake) - [premake-meta-cpp](https://github.com/d-led/premake-meta-cpp)
Testing and mocking of C++ objects is done via [googlemock+googletest](https://code.google.com/p/googlemock/).
[Travis CI](https://travis-ci.org/) is used for a proof of concept continuous integration.
Preparing build
---------------
- `premake\premake4 prepare` to check out non-git dependencies
- `premake\premake4 gmake` or `premake\premake4 vs2012`+convert to `vc12` or `premake\premake4 xcode4` to generate build files
- If you don't have Mercurial, download and extract [dicpp](https://bitbucket.org/cheez/dicpp/overview) into the dicpp folder
Blog
----
- [Part 1, Wallaroo Introduction](http://ledentsov.de/2013/12/26/quest-for-a-cpp-dependency-injection-container-library-part-1-wallaroo-introduction/)
- [Part 2, Some Sauce](http://ledentsov.de/2014/01/01/quest-for-dependency-injection-library-part2-some-sauce/)
- [Part 3, Beginning dicpp](http://ledentsov.de/2014/01/02/cpp-dependency-injection-part3-dicpp-example/)
TODOs
-----
### Frameworks
- [autowiring](https://github.com/leapmotion/autowiring)
- [Boost.DI](https://github.com/boost-experimental/di)