软件解耦
2016-06-21 07:34
316 查看
为什么要使用MVC模式进行编程? 为了降低各个模块之间的耦合,通过分层思想对代码进行拆分(面向接口编程)。
软件解耦
说起软件的解耦必然需要谈论耦合度,降低耦合度即可以理解为解耦,模块间有依赖关系必然存在耦合,理论上的绝对零耦合是做不到的,但可以通过一些现有的方法将耦合度降
至最低。做事情要想事半功倍,就要高处着眼,触摸到事情的脉络。当今流行着各种眼花缭乱的软件框架,不管是struts,还是spring,hibernate,还是.net,还是各种前端UI框架,其设计的核心思想是:
尽可能减少代码耦合,如果发现代码耦合,就要采取解耦技术;
解耦方法有但不限有如下几种:
(a)采用现有设计模式实现解耦,如事件驱动模式、观察者模式、责任链模式等都可以达到解耦的目的;
(b)采用面向接口的方式编程,而不是用直接的类型引用,除非在最小内聚单元内部。但使用该方法解耦需要注意不要滥用接口。
(c)高内聚,往往会带来一定程度的低耦合度。高内聚决定了内部自行依赖,对外只提供必须的接口或消息对象,那么由此即可达成较低的耦合度(可能会导致代码臃肿,海量代码堆积到一起)。
软件解耦
说起软件的解耦必然需要谈论耦合度,降低耦合度即可以理解为解耦,模块间有依赖关系必然存在耦合,理论上的绝对零耦合是做不到的,但可以通过一些现有的方法将耦合度降
至最低。做事情要想事半功倍,就要高处着眼,触摸到事情的脉络。当今流行着各种眼花缭乱的软件框架,不管是struts,还是spring,hibernate,还是.net,还是各种前端UI框架,其设计的核心思想是:
尽可能减少代码耦合,如果发现代码耦合,就要采取解耦技术;
解耦方法有但不限有如下几种:
(a)采用现有设计模式实现解耦,如事件驱动模式、观察者模式、责任链模式等都可以达到解耦的目的;
(b)采用面向接口的方式编程,而不是用直接的类型引用,除非在最小内聚单元内部。但使用该方法解耦需要注意不要滥用接口。
(c)高内聚,往往会带来一定程度的低耦合度。高内聚决定了内部自行依赖,对外只提供必须的接口或消息对象,那么由此即可达成较低的耦合度(可能会导致代码臃肿,海量代码堆积到一起)。
相关文章推荐
- PropertyChangeListener简单理解
- 什么是设计模式
- 设计模式之创建型模式 - 特别的变量问题
- 七、设计模式——装饰模式
- 设计模式总结
- 设计模式之创建型模式
- 浅谈设计模式的学习
- Ruby设计模式编程之适配器模式实战攻略
- 实例讲解Ruby使用设计模式中的装饰器模式的方法
- 设计模式中的模板方法模式在Ruby中的应用实例两则
- Ruby设计模式编程中对外观模式的应用实例分析
- 实例解析Ruby设计模式编程中Strategy策略模式的使用
- Ruby中使用设计模式中的简单工厂模式和工厂方法模式
- Ruby使用设计模式中的代理模式与装饰模式的代码实例
- 详解组合模式的结构及其在Ruby设计模式编程中的运用
- C# 设计模式系列教程-建造者模式
- C#编程中使用设计模式中的原型模式的实例讲解
- 使用设计模式中的工厂方法模式进行C#编程的示例讲解
- 实例解析C#设计模式编程中简单工厂模式的使用
- 详解C#设计模式编程中生成器模式的使用