依赖倒转原则

来源:互联网 发布:友邦群发软件 垃圾 编辑:程序博客网 时间:2024/04/30 23:33

依赖倒转的原则归结为一句话“抽象不应该依赖于细节,细节应该依赖于抽象”。具体说接口不应该依赖于其实现原理,而是应该其实现原理依赖于接口。
在日常开发中,我们经常会高层模块直接调用底层模块,如在高层模块功能中调用低层的数据库功能模块,但这样随即引发了一个令人头大的问题,就是如果我们在开发时临时改换底层的存储方式,而高层模块是与低层的数据库是紧紧地绑定在一起,我们就不得不去修改高层模块,这也就违反了开放-封闭原则,也导致了高层模块不具有复用性。而如果低层数据库的实现方式是针对接口编程,就不需要去在意我们具体使用的是哪种数据库,因为接口提供给我们的方法是一致的。

public interface Database  {    void data();}class SqlserDatabase implements Database{    void data(){        ...        具体实现    }}class MyDatabase implements Database{    void data(){        ...        具体实现    }}客户端程序中static void Main(string[] args){    Database database;    database=new SqlserDatabase();//如果后期需要更换数据库只需新建一个数据库类实现了DataBase,再更改这里的实例化就可以了    database.data();}

总结一下依赖倒转原则就是针对抽象编程,而不是针对实现细节进行编程

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 半夜2点3点胃疼怎么办 晚上吃多了胃疼怎么办 骨折打石膏后痒怎么办 脚脖子崴了肿了怎么办 喝酒喝的吐血了怎么办 感冒后咳嗽有痰怎么办 嗓子里老是有痰怎么办 物业把水停了怎么办 机洗衬衫缩水了怎么办 羊绒大衣洗缩水了怎么办 棉质衣服缩水了怎么办 衣服洗了变小了怎么办 毛衣洗后缩水了怎么办 鼻子又大又塌怎么办 苹果6被停用了怎么办 苹果6s手机停用怎么办 苹果4手机已停用怎么办 苹果手机5停用了怎么办 老公被骗300多万怎么办 苹果手机被抹除怎么办 钓鱼邮件点开了怎么办 幼犬吃多了拉稀怎么办 幼犬半夜醒了叫怎么办 相爱相杀的感情怎么办 冬天玩电脑手冷怎么办 被陌生人骗了钱怎么办 被网上骗了钱怎么办 20岁欠了10万怎么办 我赌博欠了10万怎么办 孩子见到生人不爱说话怎么办 18岁了个子矮小怎么办 1岁宝宝个子矮70怎么办 喋血街头2进监狱怎么办 360云盘收费了怎么办 头脑不清醒晕沉怎么办 一岁宝宝还不会走路怎么办 2岁宝宝受凉呕吐怎么办 3岁宝宝受凉呕吐怎么办 1岁宝宝受凉呕吐怎么办 3岁宝宝着凉呕吐怎么办 宝宝一进食就吐怎么办