事实上,android本身就已经给开发者实现了MVC的模型,其中,view即是V层,而Activity代表C层,M层则涉及到sqlite,http等操作。
但是,android这种划分并没有对一个项目中使用mvc起到很好的封装,因此在编写大型的项目工程时候,还是要进行一些MVC的考虑,下面就是我对于android中使用MVC的一些可能性探讨。
四层模型:
1. 数据模型层Model
包含content provider, http request, sqlite db helper等。负责提供接收数据请求,提供数据
2. 逻辑层Logic
以logic为标志,负责接收从交互层传过来的数据请求,然后转发给M层;接收M层发来的数据,然后转发给交互层。数据逻辑的处理,以及全局变量维护等均在这一层
3. 交互层
仅负责调用view显示数据;接收用户操作,然后将操作所代表的数据请求含义交给logic
4. 显示层
各种view,仅负责页面的展示
三层模型:
1. 数据层dbhelper
2. Controller 的 Activity
3. 作为显示的view
还需要仔细比较二者的区别
GitHub构建:
1. 通过继承结构,进行一层一层的抽象
2. 为了提高通用性一般都需要使用到范型
当前的类的类别:
1. Util级别
所有的类都可能调用到,提供接口和操作
2. Activity级别
主要的模块
3. Adapter级别
服务于activity
4. Handler级别
服务于activity
5. Model
6. Services
结论:
1. BaseFrame应该提供所有的非应用相关的Utils
2. BaseFrame提供非View相关,但是数据相关的Activity
3. BaseFrame提供公用的View和布局
4. 其余Utils放入应用中的同一个包,并且最先移植,是该应用的全局变量
5. 应用中的Activity继承了BaseFrame中的Activity, 并且负责个性化的展示
1. Model层
包括db和http
Db: 负责增删改查
http:负责发送和接收请求
2. View层
Activity只负责展示,描述得到数据后如何进行展示
3. Controller层
阅读(1595) | 评论(0) | 转发(0) |