接口的思想:
举例:笔记本电脑,USB接口的故事。
1,接口的出现对功能是实现了扩展。
2,接口的出现定义了规则。
3,接口的出现降低了耦合性(解耦)。
接口的出现,完成了解耦,说明有两方,一方在使用这个规则,另一方在实现这个规则。比如笔记本电脑使用这个规则,而外围设备在实现这个规则。
接口和抽象类的区别
描述事物。
犬。按照功能分类。导...
分类:
编程语言 时间:
2015-05-24 08:57:36
阅读次数:
223
内聚:一个模块内各个元素彼此结合的紧密程度耦合:一个软件结构内不同模块之间互连程度的度量最近编码的时候,总是在犹豫是把某个方法封装在一个类里,还是单独的封装成一个类。这让我突然想起内聚耦合这两个名词。我们一直追求着,高内聚,低耦合。对于低耦合,我粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的...
分类:
其他好文 时间:
2015-05-23 22:38:30
阅读次数:
121
OOAD就是面向对象分析(OOA)和面向对象设计(OOD)的统称OOA注重的是用户需求分析,OOD把用户需求转为软件需求抽象,封装,继承,多态,关联,聚合,组合,内聚和耦合抽象关注共性而不是单独个体的特性封装:外部视图和内部视图继承:多态的基础.什么是什么,而不是什么包含什么.多态:一个名称多种形式...
分类:
其他好文 时间:
2015-05-23 21:17:11
阅读次数:
155
GOF:用一个中介对象来封装一系列的对象交互。中介者使对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 类图: 适用性:一组对象以定义良好但是复杂的方式进行通信。因为这组类之间的相互关系错综复杂,如果直接管理会十分困难,因此利用中介者管理它们的关系,而Clien...
分类:
其他好文 时间:
2015-05-23 21:16:18
阅读次数:
125
使用@selector模仿代理功能降低代码耦合度说明该模式的好处就是两个产生联系的对象间并没有具体的耦合代码,增删改查均很直观源码Model//// Model.h// SELMethod//// Created by YouXianMing on 15/5/22.// Copyright ...
分类:
其他好文 时间:
2015-05-22 23:49:14
阅读次数:
127
当我们把业务处理的代码与JSP代码混在一起,不易于阅读,不易于代码维护,这就需要分层。分层模式1、分层模式是最常见的一种架构模式2、分层模式是很多架构模式的基础分层将解决方案的组件分隔到不同的层中1、在同一个层中组件之间保持内聚性2、层与层之间保持松耦合三层模式的划分1、表示层2、业务逻辑层3、数据...
分类:
编程语言 时间:
2015-05-22 21:05:27
阅读次数:
300
内聚:一个模块内各个元素彼此结合的紧密程度耦合:一个软件结构内不同模块之间互连程度的度量最近编码的时候,总是在犹豫是把某个方法封装在一个类里,还是单独的封装成一个类。这让我突然想起内聚耦合这两个名词。我们一直追求着,高内聚,低耦合。对于低耦合,我粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的...
分类:
其他好文 时间:
2015-05-22 11:23:44
阅读次数:
127
知识点 使对象之间达到松耦合的效果。 观察者模式定义了对象之间一对多的关系。主题用一个共同的接口来更新观察者。 观察者和被观察者之间通过松耦合的方式结合,被观察者不用理会观察者的实现细节,只需要观察者实现了观察接口(即所谓的注册)。示例代码 public interface Subje...
分类:
其他好文 时间:
2015-05-22 07:05:52
阅读次数:
116
懒加载,英文名LazyLoad。也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法。
不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强。
每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合。
一定要先判断是否存在。
下面是示例代码
@interface ViewCont...
分类:
移动开发 时间:
2015-05-20 18:24:37
阅读次数:
143
以前我们业务代码经常需要在其中写入与业务功能不是直接相关但是很有必要大代码,如日志,事务等,这样会带来如下麻烦:
1
对OO
是一种破坏
2
造成功能代码对其他类的依赖和耦合加深
3
造成功能代码移植困难,可重用性降低
4
原则上,与这些
切入性代码应该监视着功能代码,而不是功能代码通知
切入性代码采取行动。
毫无疑问,这些切入性代码和功能代码应该分开才能降低...
分类:
编程语言 时间:
2015-05-20 13:15:15
阅读次数:
142