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

如室室内设计官网windows系统优化软件

如室室内设计官网,windows系统优化软件,找别人做网站可靠吗,环境设计专业介绍C#设计模式六大原则是单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特法则、开闭原则。它们不是要我们刻板的遵守,而是根据实际需要灵活运用。只要对它们的遵守程度在一个合理的范围内,努为做到一个良好的设计。以下介绍C#依赖倒置原则…

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

依赖倒置原则(Dependence Inversion Principle)

依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。面向对象的开发很好的解决了这个问题,一般情况下抽象的变化概率很小,让用户程序依赖于抽象,实现的细节也依赖于抽象。即使实现细节不断变动,只要抽象不变,客户程序就不需要变化。这大大降低了客户程序与实现细节的耦合度。

例如,

1)一般的反面设计实现

using System;
namespace ConsoleApplication
{public class HondaCar{public void Run(){Console.WriteLine("本田开始启动");}public void Turn(){Console.WriteLine("本田开始转弯");}public void Stop(){Console.WriteLine("本田开始停车");}}public class FordCar{public void Run(){Console.WriteLine("福特开始启动");}public void Turn(){Console.WriteLine("福特开始转弯");}public void Stop(){Console.WriteLine("福特开始停车");}}public class BmwCar{public void Run(){Console.WriteLine("福特开始启动");}public void Turn(){Console.WriteLine("福特开始转弯");}public void Stop(){Console.WriteLine("福特开始停车");}}public class AutoSystem{public enum CarType{Ford, Honda, Bmw};HondaCar hcar = new HondaCar();FordCar fcar = new FordCar();BmwCar bcar = new BmwCar();private CarType type;public AutoSystem(CarType type){this.type = type;}public void RunCar(){if (type == CarType.Ford){fcar.Run();}else if (type == CarType.Honda){hcar.Run();}else if (type == CarType.Bmw){bcar.Run();}}public void TurnCar(){if (type == CarType.Ford){fcar.Turn();}else if (type == CarType.Honda){hcar.Turn();}else if (type == CarType.Bmw){bcar.Turn();}}public void StopCar(){if (type == CarType.Ford){fcar.Stop();}else if (type == CarType.Honda){hcar.Stop();}else if (type == CarType.Bmw){bcar.Stop();}}}class Program{public static void Main(){AutoSystem autoSystem = new AutoSystem(AutoSystem.CarType.Honda);autoSystem.RunCar();autoSystem.TurnCar();autoSystem.StopCar();Console.ReadKey();}}
}

 

 2)依赖倒置原则的实现

using System;
namespace ConsoleApplication
{public interface ICar{void Run();void Turn();void Stop();}public class BmwCar : ICar{public void Run(){Console.WriteLine("宝马开始启动");}public void Turn(){Console.WriteLine("宝马开始转弯");}public void Stop(){Console.WriteLine("宝马开始停车");}}public class FordCar : ICar{public void Run(){Console.WriteLine("福特开始启动");}public void Turn(){Console.WriteLine("福特开始转弯");}public void Stop(){Console.WriteLine("福特开始停车");}}public class HondaCar : ICar{public void Run(){Console.WriteLine("本田开始启动");}public void Turn(){Console.WriteLine("本田开始转弯");}public void Stop(){Console.WriteLine("本田开始停车");}}public class AutoSystem{private ICar icar;public AutoSystem(ICar icar){this.icar = icar;}public void RunCar(){icar.Run();}public void TurnCar(){icar.Turn();}public void StopCar(){icar.Stop();}}class Program{public static void Main(){AutoSystem autoSystem = new AutoSystem(new HondaCar());autoSystem.RunCar();autoSystem.TurnCar();autoSystem.StopCar();Console.ReadKey();}}
}

 

http://www.ds6.com.cn/news/49984.html

相关文章:

  • 中国十大发布信息网站排名百度一下你就知道了主页
  • 做理财的网站好推荐一个seo优化软件
  • 模板网站建设方案抖音seo查询工具
  • 通辽做网站有没有seo英文
  • 设计网站主页要多少钱企业网站推广策划书
  • 聊城专业网站制作公司关键词竞价排名名词解释
  • 网站建设 工作方案网页设计制作网站html代码大全
  • 怎么做网站音乐东莞seo排名公司
  • 微网站二级页面怎么做全网推广外包公司
  • 企业网站开发创意软文推广文章
  • 品牌推广合同网站如何做优化推广
  • 网站建设目的和意义宁波正规优化seo软件
  • 桂林网站建设北京seo百科
  • 做网站为什么差价很大提升seo排名平台
  • 常州微信网站建设佛山旺道seo
  • 同城购物网站怎么做关键词优化公司排名榜
  • 京东商城官方网站网络营销软文范例500
  • 青州做网站的电话网站的营销推广
  • 杭州 做网站找一个免费域名的网站
  • b站视频下载软件抖音seo推荐算法
  • 网站建设费用明细报告抖音代运营收费详细价格
  • app科技产品网站建设最新舆情信息网
  • 国外做各种趣味实验的网站搭建一个app平台需要多少钱
  • vs2010做的网站深圳 网站制作
  • 做翻译网站 知乎百度账号客服
  • 如何做双语网站代运营公司是怎么运营的
  • 可以做网站的魔盒经典营销案例100例
  • 广州手机网站建设联系电话软件商店安装
  • 上海做网站公司品划网络seo公司网站
  • 什么是网络营销的概率seo专业培训课程