问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

MVC 模式的原理,它在 Android 中是如何运用的?

发布网友 发布时间:2022-04-24 16:26

我来回答

4个回答

热心网友 时间:2022-04-12 01:00

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。其中M层处理数据,业务逻辑等;V层处理界面的显示结果;C层起到桥梁的作用,来控制V层和M层通信以此来达到分离视图显示和业务逻辑层。
在Android开发中,比较流行的开发框架模式采用的是MVC框架模式,采用MVC模式的好处是便于UI界面部分的显示和业务逻辑,数据处理分开。那么Android项目中哪些代码来充当M,V,C角色呢?
M层:适合做一些业务逻辑处理,比如数据库存取操作,网络操作,复杂的算法,耗时的任务等都在model层处理。这个和JavaEE不太一样,javaee中model层一般只有模型,而复杂的操作一般放在业务(service)层中。
V层:应用层中处理数据显示的部分,XML布局可以视为V层,显示Model层的数据结果。
C层:在Android中,Activity处理用户交互问题,因此可以认为Activity是控制器,Activity读取V视图层的数据(eg.读取当前EditText控件的数据),控制用户输入(eg.EditText控件数据的输入),并向Model发送数据请求(eg.发起网络请求等)。

热心网友 时间:2022-04-12 02:18

mvc是model,view,controller的缩写,mvc包含三个部分:

l模型(model)对象:是应用程序的主体部分,所有的业务逻辑都应该写在该层。

l视图(view)对象:是应用程序中负责生成用户界面的部分。也是在整个mvc架构中用户唯一可以看到的一层,接收用户的输入,显示处理结果。

l控制器(control)对象:是根据用户的输入,控制用户界面数据显示及更新model对象状态的部分,控制器更重要的一种导航功能,想用用户出发的相关事件,交给m哦得了处理。

android鼓励弱耦合和组件的重用,在android中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里面处理,当然对业务计算等操作也是必须放在的该层的。

热心网友 时间:2022-04-12 03:52

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

热心网友 时间:2022-04-12 05:44

受教!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 哪为是预算的高手,帮帮忙可以不,外墙保温eps线形的材料单价及每米用量还有理论单价如何计算? 车辆里程如何归零? 汽车转速表和里程表在行驶过程中瞬间归零又瞬间复原,是怎么回事? 捷达VS7原始行车里程清零了怎么办? 依维柯总公里数归零了,怎么恢复到原来的数字。 本田xrv2020款1.5T豪华版TRIP B行程总公里数不小心清零怎么恢复? 汽车里程表归零后能恢复吗? 吉利缤越汽车断电后公里数归零了怎么恢复。。。 汽车里程表归零后如何恢复 车辆时间归零了怎么调 里程表清零了怎么恢复 我的五菱荣光小卡总里程归零了还能恢复吗? 轿车卸下电瓶,装上后公里表归零,怎样恢复原来公里表数? 迈腾行驶里程清零后,如何恢复 里程表不小心清零了,可以调回原来的吗? 公众有什么作用 我想恢复相册里面的相片怎么恢复啊? 手机手机相册误删的相片怎么恢复 我是安卓手机,我看到手机拍的照片在DCIM文件夹里,我把里面所有的照片都删掉了,能重新找回吗? DCIM文件夹怎样恢复 MVC模式的基本原理 ?? 引进一整套eps线条生产设备大概需要投资多少钱 springmvc的工作原理是什么? eps装饰线条的EPS装饰线条与传统装饰线条的对比 spring mvc原理是什么? 如何在ubuntu中操作mysql数据库 eps线条开裂是什么原因?怎么处理? 什么MVC框架实现原理? EPS线条的功能和特点 MVC三层和spring三层的原理? ubuntu怎么进去mysql SpringMVC的工作原理是什么样的,跟Spring的关系是怎么样的?_百度知 ... css mvc框架基本原理 ubuntu怎么进入mysql目录 简述mvc开发模式的优点 ubuntu mysql安装后怎么启动 spring mvc和三层架构是一样的原理吗? ubuntu mysql 密码忘了怎么办 怎么连接ubuntu mysql ubuntu怎么进入mysql