Android设计模式------尽量维持类的单一职责

原创 2015年11月17日 20:50:04

<内容来自:Android源码设计模式>

Android代码设计上要满足单一职责原则,即一个类只完成一类工作(一种工作)。

假如:我们把所有的工作都写在一个类里面,一旦我们需要添加新的功能到这个类中,可能会更改原来的代码,这个类会变得越来越大,耦合度也会越来越高,如果我们写错了一个部分,就可能导致其他关联的地方同样报错。
例如:下面的伪代码

public class ImageLoader{
   //图片缓存方法
   private void initImageCache(){}
   //设置图片的方法
   private void displayImage(){
   Bitmap bitmap=downloadImage(url);
   if(bitmap!=null){
     imageview.setImageBitmap(bitmap);
   }
   //加入缓存中
   mImageCache.put(rul,bitmap);
}
   //下载图片
   private void downloadImage(String url){}
}

上述伪代码不难看出,一旦修改了其中一个模块,例如扩展了缓存策略,很容易影响displayImageView。并且ImageLoader类可能会越来越大。

所以我们可以试着抽离部分功能到一个新的类中

public class ImageLoader{
  private void displayImageView(){};
  private void downloadImageView(){};
}
public class ImageCache{
  public Bitmap cacheBitmap(){}
}

上述伪代码就可以看出 专门的类做专门的操作。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

(随记一)Android设计模式解析与实战_面对对象六大原则之单一职责原则

(随记一)Android设计模式解析与实战_面对对象六大原则之单一职责原则:* 定义 : 一个类而言,应该竟有一个引起它变化的原因 * 简单来说就是 : 一个类应该是一组相关性很高的函数、数据的封装。...

android设计模式之单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行...

Android与设计模式:用单一职责则为Activity解耦

一、什么是单一职责原则 单一职责原则(SRP:Single responsibility principle)又称单一功能原则,其定义为:一个类,应该只有一个可以导致变化的原因。光看概念会让人很头疼...

设计模式六大原则(1):单一职责原则

设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求...

设计模式六大原则(1):单一职责原则

从这篇博客开始,我将慢慢开垦Java中所涉及到的设计模式,闲言少叙,开干! 首先我们为什么要学习和掌握设计模式呢?作为一个程序开发人员和维护人员,阅读优质的代码就像在呼吸新鲜的空气一样舒适,但是现实的...

设计模式之禅-单一职责原则

设计模式之禅-单一职责原则 一 简介 在类的设计中,为了使得类的设计具有更好的可读性,可维护性,通常将这个类设计为只完成唯一的任务(职责),但是这通常是很难实现的,因为有实际的外界因素影响。 二...

设计模式--单一职责

单一职责原则(Single Responsibility Principle),简称SRP 单一职责原则定义:应该有且仅有一个原因引起类的变更,即一个接口或是类只有一个职责,它就负责一件事情。 先...

设计模式六大原则(1):单一职责原则

转载于:http://blog.csdn.net/zhengzhb/article/details/7278174 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 ...

设计模式六大原则(1):单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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