Bridge

The bridge is a a kind of double ended adapter, which completely decouples an abstraction from its implementation. I tend to think of this as more of an antipattern than a pattern. Also very rarely used in my experience.