MVC:
MVC简介
MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)
在java EE中对应关系为:
Model模型---------------业务逻辑(eg:javaBean、EJB)app中的二进制的数据
View 视图---------------与用户交互(实现:jsp)用户界面,Android中通常将其保存在xml中
Controller控制------------桥梁
使用MVC是为了将M与V的代码分离,从而使同一个程序可以使用不同的表现形式。
C存在的目的:确保M与V同步。
Android中MVC对应关系
M:app中的二进制的数据
V:用户界面,Android中通常将其保存在xml中
C:Activity,一个Activity可以有多个界面,只要用setContentView()将指定的界面传出去,就可以指定以那个视图模型显示数据。
遵守MVC模式的Android开发顺序
首先编写业务Bean,即实现M层,之后使用JUnit进行单元测试。
其次设计界面,通常由美工完成,可与第一步同时进行。
最后设计Activity。
以下是重复介绍MVC
1) 视图层(View):一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如何你对Android了解的比较的多了话,就一定可以想到在Android中也可以使用JavaScript+HTML等的方式作为View层,当然这里需要进行Java和JavaScript之间的通信,幸运的是,Android提供了它们之间非常方便的通信实现。
2) 控制层(Controller):Android的控制层的重任通常落在了众多的Acitvity的肩上,这句话也就暗含了不要在Acitivity中写代码,要通过Activity交割Model业务逻辑层处理,这样做的另外一个原因是Android中的Acitivity的响应时间是5s,如果耗时的操作放在这里,程序就很容易被回收掉。
3) 模型层(Model):对数据库的操作、对网络等的操作都应该在Model里面处理,当然对业务计算等操作也是必须放在的该层的。就是应用程序中二进制的数据。
MVC好处:从用户的角度出发,用户可以根据自己的需求,选择自己合适的浏览数据的方式。比如说,对于一篇在线文档,用户可以选择以HTML网页的方式阅读,也可以选择以pdf的方式阅读。从开发者的角度,MVC把应用程序的逻辑层与界面是完全分开的,最大的好处是:界面设计人员可以直接参与到界面开发,程序员就可以把精力放在逻辑层上。而不是像以前那样,设计人员把所有的材料交给开发人员,由开发人员来实现界面。在Eclipes工具中开发Android采用了更加简单的方法,设计人员在DroidDraw中设计界面,以XML方式保存,在Eclipes中直接打开就可以看到设计人员设计的界面。