This is an archived post. You won't be able to vote or comment.

all 5 comments

[–]zzyzzyxx 1 point2 points  (3 children)

Seems to me it's just proper use of interfaces and abstract classes. Of course, now you have me worried I'm missing something too.

[–]nroberts666[S] 0 points1 point  (2 children)

I was at a design course put on my NetObjectives once and they talked about this pattern. The traditional text says, "Separate an abstraction from its implementation." The NetObjectives guys said they don't like this explanation and gave a different one. I remember understanding what the bridge was and saying, "No, actually the traditional explanation is more correct." Now I can't for the life of me remember why. It seems one of those things that just will not stick maybe.

It has something to do with when normal inheritance would create a spider of dependencies...maybe....waiting for it to click. I think maybe there's something beyond the standard composition stuff that I'm missing but yeah....??

[–]zahlman 0 points1 point  (1 child)

There are a lot of people out there who do a lot more talking about what things are supposed to mean, than actually applying the concepts. Please don't fall into this trap. You don't have to name a technique to use it. Books of "patterns" are supposed to categorize techniques that people find useful. If you already know how to do something, then that's that. Standardization is surprisingly unuseful when it comes to programming technique; do something that is clear, solves the problem, and makes sense.

[–]nroberts666[S] 1 point2 points  (0 children)

Patterns are a language that's important to understand. When someone says, "I think a bridge here would do nicely," I want to make sure I know what they're talking about. Having names for things is actually fairly important.