降低耦合。。。

原创 2007年09月18日 10:40:00

A {

...

new B();.

...

}

A和B产生了耦合,也就是说一人A就有一个B。

现在有一天,需求变了,也就是让C代替B。

惨了,要去修改A上面所有B的原码,如果手头没有B的原码怎么办?

通常来说,要降低耦合会用接口来实现,那么在这里适用吗?试下先,

B implements Interface

C implements Interface

如果,原来开发都用的是Interface = new B();

这好像好一点,其实的确好了一点,但是这只是它的设计好一点,并没有解决我们的需求,为什么呢?

因为,这里面A控制了B对象的出现,也就是控制权在A上。

也许我们可以想下,如果控制权在别的地方,可不可以呢?

我们可以马上想到,setter,结束我们用的接口,可以了

public void setInterface(Interface i){

         this.i = i;

}

现在好了,我们可以在外面对它进行控制了。

当然我们可以用一个XML来做这些操作。

如何降低代码的耦合

降低代码的耦合,通常需要暴露一个接口,提供一个回调函数。 例如短信备份时,短信备份的代码(序列化短信到xml文件,保存为xml是因为xml具有跨平台的好处,android备份的短信也可以在ios系统...
  • XiaoShuaZi
  • XiaoShuaZi
  • 2015年05月02日 22:05
  • 1518

Java学习记录:降低耦合度

降低耦合度 监听器设计
  • He11o_Liu
  • He11o_Liu
  • 2016年02月24日 11:10
  • 3336

spring的依赖注入如何降低了耦合

刚看spring,对依赖注入DI产生了迷惘,通过查看一些资料总结了一下,希望对此理解深入的人能再指点迷津 依赖注入:程序运行过程中,如需另一个对象协作(调用它的方法、访问他的属性时),无须在代码中创...
  • liuweikai2012
  • liuweikai2012
  • 2015年03月26日 17:51
  • 1803

尽可能减少代码间的耦合——合成复用原则

什么是合成复用原则合成复用原则又称为组合/聚合复用原则(Composition/Aggregate Reuse Principle, CARP),其定义如下:合成复用原则(Composite Reus...
  • Todo_
  • Todo_
  • 2016年01月25日 11:11
  • 1248

c#之再战委托事件多线程2_委托和事件结合降低模块低耦合

我通过对一个winform窗体应用程序的不断优化,来表现如何通过“委托” 和 “事件” 来降低模块的低耦合。 但是在这之前我们要明白,什么是低耦合。 简单的说就是两个模块之间,如果一个模块中的一个...
  • qq_23156791
  • qq_23156791
  • 2015年11月29日 14:50
  • 450

码农小汪-SPringMVC-基本的理解MVC 降低耦合性~依赖性

标准 MVC 模型概述MVC模型:是一种架构型的模式,本身不引入新功能,只是帮助我们将开发的结构组织的更加合理,使展示与模型分离、流程控制逻辑、业务逻辑调用与展示逻辑分离 Model(模型): 数据...
  • u012881904
  • u012881904
  • 2016年05月01日 19:34
  • 7738

Android中的代码管理和MVP,MVC模式在Android中的使用(重点:理解“高内聚、低耦合”)

我们初学者在实际开发过程中,常常会有这样的情况: 1.代码冗余 2.代码复用性不强 3.内存泄漏 4.缺少对代码的管理——乱 5.无法达到“高内聚”“低耦合”的标准 原因:...
  • yingtian648
  • yingtian648
  • 2016年09月30日 09:33
  • 456

如何降低一个程序的耦合性

英文 : coupling  耦合性是程序结构中各个模块之间相互关联的度量。它取决于各个模块之间接口的复杂程度、调用模块的方式以及哪些信息通过接口。  一般模块之间可能的连接方式有七种,构成耦合性...
  • oyeshuier
  • oyeshuier
  • 2014年09月06日 22:36
  • 3450

谈代码耦合—知乎回答(转)

写在前面:耦合,谁之错?业务耦合,架构耦合,代码耦合,依次产生,前者是后者的催化剂,最终结果是系统严重耦合,无法适应任何变化。本篇来源:https://www.zhihu.com/question/2...
  • OBKoro1
  • OBKoro1
  • 2017年03月24日 13:11
  • 288

JavaEE中分层解耦合与事物控制-方案

JavaEE中分层解耦合与事物控制-方案转载请注明出处: http://blog.csdn.net/u010825468/article/details/494348030、写在前面很多年前,依靠李...
  • u010825468
  • u010825468
  • 2015年10月27日 00:57
  • 790
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:降低耦合。。。
举报原因:
原因补充:

(最多只允许输入30个字)