当前位置: 首页 > news >正文

网站源码建站教程天津seo推广服务

网站源码建站教程,天津seo推广服务,贵州网站建设seo,打开网站速度设计模式六大原则是单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特法则、开闭原则。它们不是要我们刻板的遵守,而是根据实际需要灵活运用。只要对它们的遵守程度在一个合理的范围内,努为做到一个良好的设计。本文主要介绍一下.NET(C#)…

设计模式六大原则是单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特法则、开闭原则。它们不是要我们刻板的遵守,而是根据实际需要灵活运用。只要对它们的遵守程度在一个合理的范围内,努为做到一个良好的设计。本文主要介绍一下.NET(C#) 接口隔离原则。

 

接口隔离原则(Interface Segregation Principle)

接口隔离原则(Interface Segregation Principle,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包含客户感兴趣的方法。客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 其中单一职责原则注重的是职责,而接口隔离原则注重的是对接口依赖的隔离。单一职责原则主要是约束类,它针对的是程序中的实现和细节;接口隔离原则主要约束接口,主要针对抽象和程序整体框架的构建。遵循接口隔离原则是为了约束接口、降低类对接口的依赖性。

例如,

1)一般的反面设计实现

using System;
namespace ConsoleApplication
{class Program{//定义接口动物public interface IAnimal{void Eat();//吃行为void Walk();//行走行为void Run();//奔跑行为void Fly();//飞翔行为void Glide();//滑翔行为}//动物狗实现类public class Dog : IAnimal{public void Eat(){Console.WriteLine("吃狗粮");}public void Walk(){Console.WriteLine("四条腿走路");}public void Run(){Console.WriteLine("快跑");}//对狗来说无用的接口方法public void Glide() { }public void Fly() { }}//动物鸟实现类public class Bird : IAnimal{public void Eat(){Console.WriteLine("吃虫子");}public void Glide(){Console.WriteLine("在空中滑翔");}public void Fly(){Console.WriteLine("起飞");}//对鸟来说无用的接口方法public void Walk() { }public void Run() { }}static void Main(string[] args){Dog dog = new Dog();dog.Eat();dog.Walk();dog.Run();Bird bird = new Bird();bird.Eat();bird.Glide();bird.Fly();Console.ReadKey();}}
}

 2)接口隔离原则的实现

using System;
namespace ConsoleApplication
{class Program{//定义接口动物public interface IAnimal1{void Eat();//吃行为}public interface IAnimal2{void Walk();//行走行为void Run();//奔跑行为}public interface IAnimal3{void Fly();//飞翔行为void Glide();//滑翔行为}//动物狗实现类public class Dog : IAnimal1, IAnimal2{public void Eat(){Console.WriteLine("吃狗粮");}public void Walk(){Console.WriteLine("四条腿走路");}public void Run(){Console.WriteLine("快跑");}}//动物鸟实现类public class Bird : IAnimal1, IAnimal3{public void Eat(){Console.WriteLine("吃虫子");}public void Glide(){Console.WriteLine("在空中滑翔");}public void Fly(){Console.WriteLine("起飞");}}static void Main(string[] args){Dog dog = new Dog();dog.Eat();dog.Walk();dog.Run();Bird bird = new Bird();bird.Eat();bird.Glide();bird.Fly();Console.ReadKey();}}
}

 

http://www.yayakq.cn/news/282722/

相关文章:

  • 广州pc网站建设河源公司做网站
  • 服装店网站模板网页视频下载软件手机版
  • 北京网站设计制作飞沐wordpress弹出式广告
  • 淘宝店铺网站策划书vps上的网站运行太慢
  • 网站建设的利益企业网站服务器
  • 东莞做网站哪家好克拉玛依燃气公司主页
  • 安阳+网站建设自学网站建设基本流程
  • 深圳网站设计公司费用天眼企业查询系统官网
  • 网站如何做新闻聚合增加网站流量
  • 网站开发分析软件项目管理是做什么的
  • 个人注什么域名的网站源码之家的模板怎么用
  • 郑州网站推广排名公司网站推广怎么推
  • 不是网站开发语言的是浙江建设职业技术学院
  • 广州网站建设 八爪鱼申请网站建设经费
  • 在上海做兼职在哪个网站好wordpress is home
  • 什么是门户类型的网站高清素材视频去哪里找
  • php网站代做无锡网站设计系统
  • 江门网站建设junke100制作图片的软件推荐
  • 2022年国际新闻除了seo还可以做哪些推广呢
  • 做网络推广的网站赣州小程序推荐
  • 怎么做有数据库的网站哪种网站语言最好
  • 企业为何选择网站推广外包?深圳龙华新区网站建设
  • 百度怎么建设网站游乐园网站建设
  • 企业网站模板下载尽在网站排名优化推广厦门
  • h5响应式网站做动画常见的软件开发工具
  • 芜湖网站建设芜湖中国林业建设协会网站
  • 南京seo全网营销成都网站建设优化推
  • 帝国cms做微网站蓝科企业网站系统
  • 怀化网站设计流行的wordpress主题
  • 物流网站后台wordpress喜欢