From 8d90b8dbad5531ac2d7bfd133f44f552774ed0db Mon Sep 17 00:00:00 2001 From: Jakub Vojvoda Date: Tue, 13 Sep 2016 22:44:52 +0200 Subject: [PATCH] init Bridge --- bridge/Bridge.cpp | 17 +++++++++++++++++ bridge/README.md | 11 +++++++++++ 2 files changed, 28 insertions(+) create mode 100644 bridge/Bridge.cpp create mode 100644 bridge/README.md diff --git a/bridge/Bridge.cpp b/bridge/Bridge.cpp new file mode 100644 index 0000000..5564e57 --- /dev/null +++ b/bridge/Bridge.cpp @@ -0,0 +1,17 @@ +/* + * C++ Design Patterns: Bridge + * Author: Jakub Vojvoda [github.com/JakubVojvoda] + * 2016 + * + * Source code is licensed under MIT licence + * (for more details see LICENCE) + * + */ + +#include + +int main() +{ + + return 0; +} \ No newline at end of file diff --git a/bridge/README.md b/bridge/README.md new file mode 100644 index 0000000..8a17558 --- /dev/null +++ b/bridge/README.md @@ -0,0 +1,11 @@ +## Bridge + +Decouple an abstraction from its implementation so that the two can +vary independently. + +### When to use + +* you want to avoid a permanent binding between an abstraction and its implementation +* both the abstractions and their implementations should be extensible by subclassing +* changes in the implementation of an abstraction should have no impact on clients +* you want to hide the implementation of an abstraction completely from clients