What design pattern should I used for this? Bridge, Adapter, Facade, or something else?

Posted on 2011-05-04
Last Modified: 2012-06-22
It consists of 3 parts.....

a- A database with past MLB baseball scores
b- [Program to be built, middle man between a and c]
c- Several apps that contain picks

Program "c" will call program "b" with a pick.
Program "b" will check in the database "a" if that pick was a winner
Program "b" returns to program "c" the result

Other info: I'm building this in C# using .net framework 2.0
Question by:silentthread2k
    LVL 59

    Expert Comment

    by:Kevin Cross
    If I remember my design patterns correctly, you want the Adapter pattern here.  You are creating a data abstraction layer basically.  
    LVL 59

    Accepted Solution

    Unless I misunderstood and program A represents your database layer (Adapter) already, then program B may be a Facade or a simplication of the interface to something like checkPick(...) that can be utilized easily across your different applications.  

    Hope that helps.  I figure this is homework or learning of some kind, so hopefully I explained a enough --- if not, please feel free to ask and we can try to guide you through, so that you have a good understading...
    LVL 17

    Assisted Solution

    by:Carlos Villegas
    Well, I think that it is a Three-tier architecture:
    Data, Application and Presentation

    Check Wikipedia:

    Author Closing Comment


    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    Software development teams often use in-memory caches to improve performance. They want to speed up access to, or reduce load on, a backing store (database, file system, etc.) by keeping some or all of the data in memory.   You should implement a …
    Introduction Many of the most common information processing tasks require sorting data sets.  For example, you may want to find the largest or smallest value in a collection.  Or you may want to order the data set in numeric or alphabetical order. …
    Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…
    Here's a very brief overview of the methods PRTG Network Monitor ( offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

    754 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    25 Experts available now in Live!

    Get 1:1 Help Now