设计模式03-接口隔离(接口保持最小单位)
作者:互联网
Interface Segregation: 接口隔离
- 单一职能和接口隔离感觉上十分相似,都使用了最小化原则。(接口保持最小单位,然后可以使用继承进行拓展)
- 以下例子是打印机功能,新的打印机可以有多个功能,单是老的打印只能打印,此时我们就应该把打印接口单独隔离
-
class Document { } interface IPrint { void Print(Document d); } interface IBetterPrint: IPrint { // void Print(Document d); void Copy(Document d); void Fex(Document d); void Email(Document d); } // 新式打印机 class NewPrint : IBetterPrint { public void Copy(Document d) { } public void Email(Document d) { } public void Fex(Document d) { } public void Print(Document d) { } } // 老式打印机 class OldPrint : IPrint//IBetterPrint { public void Copy(Document d) { throw new NotImplementedException(); } public void Email(Document d) { throw new NotImplementedException(); } public void Fex(Document d) { throw new NotImplementedException(); } public void Print(Document d) { Console.WriteLine(d.ToString()); } }
标签:Email,03,设计模式,void,接口隔离,Print,Document,public,Fex 来源: https://www.cnblogs.com/Zingu/p/16257027.html