?? 哎。真是纠结。2011年买的笔记本,2G内存,320G硬盘,i3处理器。如今用着好卡呀。呜呜。怎么办?买个新的吧太贵了,5K呀。还好,能够买个4G内存。再买个1T硬盘。加起来顶多1K哦,相同感受飞一般的感觉。太好了。 但是,我2012年买的手机好卡呀。配置好低呀。呜呜,iphone6都出了。4
分类:
其他好文 时间:
2016-02-04 08:56:51
阅读次数:
167
依赖倒转原则 抽象不应该依赖细节,细节应该依赖抽象 通俗的解释,以计算机系统为例,就是要针对接口编程,不要对实现编程,无论主板、CPU、内存、硬件都是在针对接口设计的,如果针对实现来设计,内存就要对应到针对某个品牌的主板,那么会出现换内存需要把主板也换掉的尴尬。(内存的引脚、主板的插槽都是标准接口的...
分类:
其他好文 时间:
2015-12-18 18:19:33
阅读次数:
116
当一个文件(aa.c文件)依赖于头文件(bb.h)时,如果bb.c编译之后形成的bb.o文件重新编译后,aa.o的文件不需要重新编译aa.c文件:bb.h文件:对bb.c文件进行声明bb.c文件:有朋友就好奇了,明明bb.h里没有任何实现,为什么aa.c只导入bb.h就可以使用sum方法求和?原因是...
分类:
编程语言 时间:
2015-10-19 10:38:07
阅读次数:
151
建造者模式(Builder Pattern):将一个复杂对象(产品)的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。也被称为生成器模式。
建造者模式是复杂对象的组装和创建,是一种对象创建型模式,满足依赖倒转原则(细节依赖于抽象,而非抽象依赖于细节)。假设一个复杂的对象可以看做是一个产品的话,那么该对象的方法(或称内部表象)就对应了产品的零件,通过建造者模式,客户不需要知道建造的具体细节...
分类:
其他好文 时间:
2015-08-31 17:26:25
阅读次数:
143
生活中的例子:
电脑的品牌有很多,但电脑中的所有部件都有标准的接口,不同的厂家都是按照标准去生产各个部件,这些部件的内部实现不同,但接口都是一样的,这样的话,如果我的联想电脑的内存条坏了,我随便买一根内存条插上都能使用。
之所以我们的电脑能使用任何厂家生产的内存条,是因为这些电脑生产厂家都是“面向接口”生产,而在软件世界中,面向接口编程就是依赖倒转。
依赖倒转的官方定义:
1.高层模块不应该依赖于低层模块,他们都应该依赖于抽象;
2.抽象不应该依赖于细节。细节应该依赖于抽象。...
分类:
其他好文 时间:
2015-08-31 15:21:06
阅读次数:
196
1、开闭原则:对扩展开放,对修改关闭2、里氏转换原则:子类继承父类,单独完全可以运行3、依赖倒转原则:引用一个对象,如果这个对象有底层类型,直接引用底层4、接口隔离原则:每一个接口应该是一种角色5、合成、聚合复用原则:新的对象应使用一些已有的对象,使之成为新对象的一部分6、迪米特原则:一个对象应对其...
分类:
其他好文 时间:
2015-08-16 12:07:14
阅读次数:
93
定义:设计模式实际上是一套被反复使用,思想成熟,经过分类和无数实践设计经验的总结。设计模式存在的根本原因是为了代码复用,增加可维护性。有如下原则:1、开闭原则:对扩展开放,对修改关闭。2、里氏转换原则:子类继承父类,单独调完全可以运行。3、依赖倒转原则:引用一个对象,如果这个对象有底层类型,直接引用...
分类:
其他好文 时间:
2015-08-11 11:50:41
阅读次数:
107
面向对象的原则:开闭原则(Open Closed Principle,OCP)里氏代换原则(Liskov Substitution Principle,LSP)依赖倒转原则(Dependency Inversion Principle,DIP)接口隔离原则(Interface Segregation...
分类:
其他好文 时间:
2015-08-04 15:10:41
阅读次数:
202
简单说吧,该模式就只有两种角色,观察者对象(主题)和被观察者对象(观察者)。主题接收被观察者,有更新就通知被观察者。根据依赖倒转原则高内聚低耦合的目标,我们分别对此增加两个抽象接口。
概念:
观察者模式(Observer),又称发布\订阅模式(Publish\Subscribe)。它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有...
分类:
其他好文 时间:
2015-07-29 19:26:01
阅读次数:
135
原则:依赖倒转原则:针对接口编程,依赖于抽象而不依赖于具体;一、创建接口:发送消息package Factory;public interface Sender{ public void Send();}二、创建两个实现类1、发送邮箱package Factory;public class M...
分类:
其他好文 时间:
2015-07-24 15:52:59
阅读次数:
103