Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science 490.002 Topical Paper Presentation #03 Adam Coffman The Cascading Bridge C a s c a d i n g B r i d g e – P a g e 1 The Cascading Bridge.

Similar presentations


Presentation on theme: "Computer Science 490.002 Topical Paper Presentation #03 Adam Coffman The Cascading Bridge C a s c a d i n g B r i d g e – P a g e 1 The Cascading Bridge."— Presentation transcript:

1

2 Computer Science 490.002 Topical Paper Presentation #03 Adam Coffman The Cascading Bridge C a s c a d i n g B r i d g e – P a g e 1 The Cascading Bridge Design Pattern by Brendan McCarthy

3 The Problem The Cascading Bridge design pattern addresses a similar problem to the traditional Bridge pattern but provides additional layers of separation. The traditional Bridge pattern separates the interface to an Object from its implementation, allowing the two to vary independently. The Cascading Bridge takes this one step further by splitting the implementation itself into several pieces. This allows the implementation to be represented as multiple separate components instead of one monolithic one. In theory, this should decouple the system further, resulting in code that is portable, interchangeable, and testable. The Cascading Bridge can also be used to isolate components of the implementation that are likely to be changed at a later time. C a s c a d i n g B r i d g e – P a g e 2 UML From Dr. White’s Bridge Pattern Slides

4 The Cascading Bridge Pattern Traditional The abstraction here functions identically to the abstraction in the traditional Bridge pattern. When a message is passed from the abstraction to the implementation, it is passed from implementor to implementor until it reaches the end of the chain. C a s c a d i n g B r i d g e – P a g e 3

5 This version is used when the number or order of the implementors is not known in advance or could vary. Each non-terminal implementor contains a recursive pointer back to its parent class. C a s c a d i n g B r i d g e – P a g e 4 The Cascading Bridge Pattern Folded

6 Real-World Application The folded variation of the pattern is used here as any number of hand actions may be needed in any order before the terminal condition is met. C a s c a d i n g B r i d g e – P a g e 5

7 Pattern Analysis I have mixed feelings about the applicability of this pattern in real-world software. Certainly coding in this fashion promotes loose coupling, good software design, and comes with all the advantages therein. However, there were many points in the author’s paper where it sounded as if he was just describing several other patterns layered together. I can see where the concepts he discusses are useful, sound, programming advice, but I don’t know that they warrant their own pattern. An internet search would seem to back up this opinion, as the paper is 11 years old and the only mentions of this pattern anywhere are the syllabus for this class, and links to this paper itself. Overall, I would say that this paper reads more like a best practices document on how to use some of the patterns in conjunction rather than a new, original pattern. C a s c a d i n g B r i d g e – P a g e 6


Download ppt "Computer Science 490.002 Topical Paper Presentation #03 Adam Coffman The Cascading Bridge C a s c a d i n g B r i d g e – P a g e 1 The Cascading Bridge."

Similar presentations


Ads by Google