Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. For those of you who have their design already set in their minds or simply want a custom design, drop us a line and lets get your project started in no time. Can be unsafe when implemented in some language/hardware combinations. It can therefore sometimes be considered an anti-pattern. Yes Yes N/A Bridge Decouple an abstraction from its implementation allowing the two to vary independently.