diff options
Diffstat (limited to 'development/boost-di/README')
-rw-r--r-- | development/boost-di/README | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/development/boost-di/README b/development/boost-di/README new file mode 100644 index 0000000000000..d1828aede4fc3 --- /dev/null +++ b/development/boost-di/README @@ -0,0 +1,25 @@ +Dependency Injection (DI) involves passing (injecting) one or more +dependencies (or services) to a dependent object (or client) which +become part of the client's state. It is like the Strategy Pattern, +except the strategy is set once, at construction. DI enables loosely +coupled designs, which are easier to maintain and test. + +Features: + +- None run-time overhead; +- Compiles fast; +- Gives short diagnostic messages; +- Is non-intrusive; +- Reduces boilerplate code; +- Reduces testing effort; +- Gives better control of what and how is created; +- Gives better understanding about objects hierarchy. + +Design goals: + +- Be as fast as possible; +- Compile as fast as possible; +- Give short and intuitive error messages; +- Guarantee object creation at compile-time; +- Be as non-intrusive as possible; +- Be easy to extend. |