public static void Main()
Console.WriteLine("Bridge Pattern\n");
Console.WriteLine(new Abstraction(new ImplementationA()).Operation());
Console.WriteLine(new Abstraction(new ImplementationB()).Operation());
public Abstraction(IBridge implementation)
public string Operation()
return "Abstraction" + " <<< BRIDGE >>>> " + bridge.OperationImp();
class ImplementationA : IBridge
public string OperationImp()
return "ImplementationA";
class ImplementationB : IBridge
public string OperationImp()
return "ImplementationB";