码迷,mamicode.com
首页 > 移动开发 > 详细

保持Android代码颜值的一些思考

时间:2015-08-27 18:43:07      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

大部分时候,我们弄的Activity承担了Control和View的功能,使得Activity类越来越大,形成了最后无法维护的Activity。如何优化Android代码,可以顺序执行以下步骤:


1、职责划分

首先我们将Activity作为一个View来考虑,既然是View那么就应该更多的负责View的事情,而尽可能的不去处理Control相关的事情。

页面中类似于网络获取,数据库数据获取等等的操作,都移到另一个类中去做,这个类做完这些事情,通过handler或者监听去通知Activity更新页面,而不再Activity中去执行这些逻辑。


2、页面分块

一个Activity,不可能它的所有组件都是需要紧密的相互通信的,我们先把相互独立的分块。由一个A变成一个a,b,c;

那么对于A只需要实例化a,b,c,管理a,b,c之间交互,而由a,b,c自己去管理自己的逻辑。


3、独立性

自定义View,去简化比较独立的a逻辑,既然一个a和其他b,c之间没有交互,或只有极少的交互,那么它就可以自己成为一个独立View,自己去管理自己的逻辑。而需要它的地方,只需要实例化即可。


4、交叉

最头疼的就是a有些逻辑属于自己的,但是它有频繁的和b,c进行交互。对于这种情况,我们就新建一个Control a,这个Control获取到这个a的引用,处理a包含View的独立部分,而交叉的逻辑,仍然保持在最高层。


举例说明,一个我的页面,有头像,名称,头像和名称还有一些互动,例如点头像,出现hello+name,下面用列表显示一些配置,头像和名称是网络获取的,配置是本地获取;

那我们就可以划分为a头像和名称,b配置区

a和b基本没交互

那么a 定义为一个自定义View

b定义一个Control去管理view

定义c获取网络信息

定义d获取本地数据

a里面提供一个方法获取数据,刷新页面

b里面提供一个方法获取数据,刷新页面

在Activity,只要实例化即可


Android还有MVP模式,也可结合以上综合使用


保持代码的颜值……

当然必要的适当的注释,方法不过大,这些也不仅仅是Android了




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

保持Android代码颜值的一些思考

标签:

原文地址:http://blog.csdn.net/zhangfei2018/article/details/48028883

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!