博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】依赖抽象,不要依赖具体
阅读量:6973 次
发布时间:2019-06-27

本文共 539 字,大约阅读时间需要 1 分钟。

转载

 

这是OO设计中的一个原则。到底是什么意思啊?一起来理解一下吧:

你叫我怎么说呢,这个东西,总之你不能把它想的很神秘,如果你把它想的跟神似的,你基本上就高攀不起了,它就是一种经验的总结 ,其它的什么玩意儿都不是。
我这个人比较笨,什么都得有例子才能玩的转,下面 就是一个例子啊:
时下喜欢小狗,小猫的人多了,开个宠物店肯定有的赚!在这里我就有个疑问了,为什么人们要开宠物店而不开个什么小狗店,小猫店什么的?
这个问题很不错。
你要开个小狗店,那意思就说你只能卖小狗了,小猫店类似;
呵呵,现在我们站在顾客的角度去想想这个问题,顾客说,我想买个小狗,所以我要去宠物店(而不是小狗店)!我知道狗就是宠物(你看我多聪明呀)!
分析分析:
现在顾客很显然他想买一只狗,但他却去了宠物店,很显然他依赖于宠物这个“”概念“”;而宠物店对大家宣传的是我这有宠物,而不是说宣传我这有狗或者猫;
这 样就产生了一种效果:宠物店可以把任何可以称为宠物的东西(比如一只恐怖的大Python)放在店里卖;而顾客可以去宠物店去买任何它以为是宠物的东东 (比如——鳄鱼)。其实,这就是依赖倒置原则了:最上面的是宠物店,中间是宠物(概念级别),最下面是顾客。而宠物店和顾客都以来于宠物 这个抽象的概念!

你可能感兴趣的文章
ASP.NET 5中的ASP.NET Bundles跑到哪里去了?
查看>>
云计算解码:技术架构和产业运营
查看>>
windows7学习一
查看>>
单选按钮易忽略的Group属性
查看>>
转 sql 优化
查看>>
PHP安全相关的配置(1)
查看>>
virtualbox 中,虚拟机网络使用NAT方式时,其它机器对虚拟机的访问
查看>>
Salesforce.com + AutoCAD WS集成研究 part2
查看>>
[Ubuntu] Access denied for user ‘debian-sys-maint’@'localhost’ (using password: YES)
查看>>
php curl请求转发
查看>>
设置 cell点击 背景色
查看>>
提高代码质量 CheckStyle FindBugs PMD
查看>>
【Java】HashTable和HashMap区别
查看>>
shell技巧之以逆序形式打印行
查看>>
Java面试题集(六)
查看>>
DCHP是什么意思
查看>>
go异常处理原则
查看>>
窗体传值
查看>>
跟我一起云计算(3)——hbase
查看>>
vim与外部文件的粘帖复制
查看>>