ブリッジモード-異なる場合に異なる話をする
ブリッジモードは朝MMに会って、朝は良いと言って、夜MMに会って、夜は良いと言います;MMに出会って新しい服を着て、あなたの服がとてもきれいだと言って、MMの新しく作った髪型に出会って、あなたの髪の毛がとてもきれいだと言います.「朝、MMに会ったらどう言ったらいいか」という質問をしないで、自分でBRIDGEを組み合わせておけばいいのではないでしょうか.これがブリッジモードです!
ブリッジモードは、ブリッジモード(Bridge)が抽象部分をその実装部分から分離し、独立して変化させることを意図する.
ブリッジパターンクラス図
ブリッジモード実装
ブリッジモードまとめ
朝MMに会って、朝の良い実现は朝MMに出会う时机と私の言うことを组み合わせて言えばいいです.同じように、朝MMに出会って私も夜が良いと言うことができて、それは朝の时机と私の言う话をすることです:“こんばんは”を组み合わせてすればいいです.ブリッジモードは合成/重合多重化の原則を体現し、重合は弱い所有関係を表し、AasBを体現している.合成は1種の強い所有関係で、厳格な部分と全体の関係を体現して、部分と全体のライフサイクルは同じで、AisBを体現して、できるだけ合成/重合を使って、できるだけ類の継承を使わないでください.
記事のアドレス:http://www.zhuli8.com/sjms/bridge.html
ブリッジモードは、ブリッジモード(Bridge)が抽象部分をその実装部分から分離し、独立して変化させることを意図する.
ブリッジパターンクラス図
ブリッジモード実装
/// <summary>
///
/// </summary>
abstract class Bloger
{
public abstract void Greet();
}
/// <summary>
/// : !
/// </summary>
class MorningImp : Bloger
{
public override void Greet()
{
Console.WriteLine(" !");
}
}
/// <summary>
/// :
/// </summary>
class NightImp:Bloger
{
public override void Greet()
{
Console.WriteLine(" !");
}
}
/// <summary>
/// : !
/// </summary>
class ClothesImp : Bloger
{
public override void Greet()
{
Console.WriteLine(" !");
}
}
/// <summary>
/// : !
/// </summary>
class HeadformImp : Bloger
{
public override void Greet()
{
Console.WriteLine(" !");
}
}
/// <summary>
/// MM
/// </summary>
class Opportunity
{
protected Bloger imp;
public void SetImp(Bloger imp)
{
this.imp = imp;
}
public virtual void ShowGreet()
{
Console.Write(" :");
imp.Greet();
}
}
/// <summary>
/// :
/// </summary>
class Morning : Opportunity
{
public override void ShowGreet()
{
Console.Write(" MM:");
imp.Greet();
}
}
/// <summary>
/// :
/// </summary>
class Night : Opportunity
{
public override void ShowGreet()
{
Console.Write(" MM:");
imp.Greet();
}
}
/// <summary>
/// : MM
/// </summary>
class Clothes : Opportunity
{
public override void ShowGreet()
{
Console.Write(" MM :");
imp.Greet();
}
}
/// <summary>
/// : MM
/// </summary>
class Headform : Opportunity
{
public override void ShowGreet()
{
Console.Write(" MM :");
imp.Greet();
}
}
/// <summary>
///
/// </summary>
class Program
{
static void Main(string[] args)
{
// :
Opportunity m = new Morning();
// : !
m.SetImp(new MorningImp());
m.ShowGreet();
// :
Opportunity n = new Night();
// : !
n.SetImp(new NightImp());
n.ShowGreet();
// : MM
Opportunity c = new Clothes();
// : !
c.SetImp(new ClothesImp());
c.ShowGreet();
// : MM
Opportunity h = new Headform();
// : !
h.SetImp(new HeadformImp());
h.ShowGreet();
// :
Opportunity o=new Morning();
// , MM " !", !
o.SetImp(new NightImp());
o.ShowGreet();
Console.Read();
}
}
ブリッジモードまとめ
朝MMに会って、朝の良い実现は朝MMに出会う时机と私の言うことを组み合わせて言えばいいです.同じように、朝MMに出会って私も夜が良いと言うことができて、それは朝の时机と私の言う话をすることです:“こんばんは”を组み合わせてすればいいです.ブリッジモードは合成/重合多重化の原則を体現し、重合は弱い所有関係を表し、AasBを体現している.合成は1種の強い所有関係で、厳格な部分と全体の関係を体現して、部分と全体のライフサイクルは同じで、AisBを体現して、できるだけ合成/重合を使って、できるだけ類の継承を使わないでください.
記事のアドレス:http://www.zhuli8.com/sjms/bridge.html