安卓实习期间整理知识点(十四)
来源:互联网 发布:淘宝销量查询 编辑:程序博客网 时间:2024/05/16 09:59
安卓实习期间整理知识点(十四)
对public static final进行归类的必要性
使用单独的class如Constants去管理所有用于信息交换的信息,是个可接受的,合理的方法。不推荐在单独类声明这些常量,因为这将无意间增加了耦合性,如果一个类变化了,那么将导致变量也将变化,影响了其它的类。但是如果使用单独的类包含这些常数,那么它们将不会随类的变换而变换。
示例
public class Constant { // BaseService public static final String SERVICE_TYPE = "service_type"; public static final String GET_DATA_SUCCESS = "get_data_success"; public static final String IS_REFRESH = "is_refresh"; // NearbyService public static final String NEARBY_PERSON_SERVICE = "nearby_person_service"; public static final String CURRENT_PAGE_NUMBER = "current_page"; public static final String CURRENT_PERSON_GENDER = "current_gender"; public static final String CURRENT_PERSON_LIST = "current_person_list";}
将多线程写入Service的必要性
- 对于频繁与UI进行通信的线程,我们尽量不使用Service,而只是使用SyncTask或者Handler
- 对于有些在后台使用的任务,如播放音乐,进行更新下载,需要使用Service,因为它与UI的显示独立
- 为什么不使用Activity/Fragment->Service->BroadcastReceiver这种方法执行频繁的线程呢?1.通信开销大,如序列化,通常需要大量的时间 2.安全性,Broadcast可被其它非指定的Receiver获取
OOP思想:一次只做一件事的思考
- 实例:UI线程。android中的UI线程被设计成只负责ui的更新。也就是说不在UI线程中执行消耗时间的任务,不在非UI线程上更新UI(android系统也不允许)。
- 现在遇见的需要思考的问题:在开启Service更新Person和Date列表时,需不需要两个不同的service还是说使用if-else语句。最后我决定使用两个不同的service,这样做可以降低耦合性,一次只做一件事;但是这样会增加类的文件数量,有重复代码,解决方案可以是两个不同的service继承同一个子类,把相同的地方写入子类。
- 尽量不在if-else中执行两个不同的任务操作,宁可将它们分开。
0 0
- 安卓实习期间整理知识点(十四)
- 安卓实习期间整理知识点(一)
- 安卓实习期间整理知识点(二)
- 安卓实习期间整理知识点(三)
- 安卓实习期间整理知识点(四)
- 安卓实习期间整理知识点(五)
- 安卓实习期间整理知识点(六)
- 安卓实习期间整理知识点(七)
- 安卓实习期间整理知识点(八)
- 安卓实习期间整理知识点(九)
- 安卓实习期间整理知识点(十)
- 安卓实习期间整理知识点(十一)
- 安卓实习期间整理知识点(十二)
- 安卓实习期间整理知识点(十三)
- 安卓实习期间整理知识点(十五)
- 实习整理(十四)
- 安卓技术知识点整理
- 安卓基础(十四)
- 欢迎使用CSDN-markdown编辑器
- myBatis学习笔记(4)——一对一关联表查询
- 【WEB前端】eCharts 使用笔记
- ActionBar(3)起用各样式(基本,分离,tab,下拉列表)
- HDU_5224 Tom and paper
- 安卓实习期间整理知识点(十四)
- 使用py2exe生成独立的exe文件
- Eclipse 中Alt+/快捷键失效的解决办法
- OC基础
- cef3 process mouse key event
- UICollectionView 不同大小Cell 等间距的实现
- Android插件开发初探——分析篇
- poj1017
- tomcat彻底关闭