- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LWUITMVC.
解读 LWUIT 之七:深入理解 LWUIT 框架的 MVC
LWUIT 开发指南下载
作者写的 Hello List 源代码下载
MVC 是一个优秀的体系结构设计模式。MVC 把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。如下图所示:
上图对 MVC 模式做了简单解释,明白了上图对 MVC 的各个划分部分的职责就很容易理解了。模型(Model)又称“数据模型”(Model),用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有对数据直接访问的权力,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。但是模型中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此模型的视图必须事先在此模型上注册,从而,视图可以了解在数据模型上发生的改变。
视图(View)又称视图层,能够实现数据有目的的显示(理论上,这不是必需的)。在视图中一般没有程序上的逻辑。为了实现视图上的刷新功能,视图需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
控制器(Controller)起到不同层面间的组织作用,用于控制应用程序的流程。它处理事件并作出响应。“事件”包括用户的行为和数据模型上的改变。
Swing MVC 是公认的 MVC 设计的典范,Swing 的各个可视化组件都使用 MVC 模式来设计。在 Swing 中,M(Model,数据模型)是 JTextField 的 Document,JTabel 的 TableModel,JTree 的 TreeModel 。。。V(View,视图)则是 ComponentUI。C(控制器,Controller)却不是很明显,可以简单地将其 Event 机制看做一个 Swing 团队开发给 Swing 程序员的 C。
LWUIT 引入了 MVC 的设计思想,其实 LWUIT 就是一个 JavaME 的 MVC 框架,LWUIT 官方就把 Swing Like MVC 列在了其主要特征的第二位。了解了 Swing 的 MVC 之后,参照 LWUIT 的 API,我想你可以将 LWUIT 的 M、V、C 对号入座了吧?没错,正如你所猜到的,在 LWUIT 中,M(Model,数据模型)是 List 的 ListModel,Tabel 的 TableModel,Tree 的 TreeModel 。。。V(View,视图)则是 ComponentUI(即 API 中给的各个 LWUIT 控件)。C(控制器,Controller)却不是很明显,可以简单地将其 Event 机制看做一个 LWUIT 团队开发给 LWUIT 程序员的 C。如果你觉得这样说对控制器的理解很抽象,你可以把你的程序里每个实现了 com.sun.lwuit.events.ActionListener 接口的类当成一个控制器。
MVC 的优势就是各司其责:M 只管把数据组织好就是了;V 只管把信息完美地展现给用户;而 C 则只负责对用户事件进行监听,并做出相应处理,它是 MVC 的组织者。这让人想起来流行的 Java EE 四层体系架构:展现层、业务层、数据访问层(操作保存数据库)、持久层(数据保存为文件),各层各司其职。那是以业务模型为中心的大型应用,我们的 JavaME 只是手机客户端的应用小程序,没有那么复杂的业务逻辑要处理,也没有庞大的业务数据要持久化,没有必要分那么多层,就一个表现层足够了。也可以根据需要适当把模型层扩展一下。如下图所示,对使用了 LWUIT 的 Java ME 应用程序中责任分工做的一个概述。
MVC 可以使我们应用程序的表现层部分更加低耦合、高内聚、灵活度更高。那么我们在 LWUIT 程序中应该怎样使用 MVC 模式呢?
1、Form 或者其他顶层容器中,由各个 LWUIT 组件构成了 View 视图层。用来展现数据,提供用户操作的图形界面。
2、一个或者一组业务对象是 Model。它们存放了 LWUIT 组件要显示的数据。它们是业务对象,因此,可以直接在业务层代码中使用,执行复杂的业务计算。为了让 LWUIT 组件实时展现业务对象的数据,我们需要让 LWUIT 组件监听业务对象,一旦业务对象发生改变,就重新根据新的数据,构建新的 LWUIT 组件的 Model,从而在 LWUIT 组件上展现必威体育精装版的业务对象数据。为了让业务对象能够得到用户必威体育精装版输入的数据,我们还需要将业务对象注册到
您可能关注的文档
- LR脚本如何进行参数化..doc
- LS017打造七匹狼运动周执行力工具篇..doc
- LS20B型旋桨式流速仪_流速测量仪_流速计LS1206B流速测量仪_旋桨式流速仪_旋桨式流速计..docx
- LS300便携式测水流量仪SL-50B便携式流速仪..docx
- LSDJ型电动执行机构..doc
- LSC系列蒸汽锅炉检验工艺..doc
- Lspgek托福词汇堂..doc
- LSPM实施指导意见..doc
- LS型无轴螺旋输送机安装..doc
- LSIRAID界面下做硬盘修复..doc
- 美国F.W.BELL 高斯计手册.pdf
- KZ系列分布式远程IO系统用户手册VB.12.pdf
- IT6000B_使用说明书手册.pdf
- LM2022_installation_guide_en操作说明书手册.pdf
- IT-M3900C_用户操作说明书手册.pdf
- Fujitsu-Siemens-Amilo-Li1718-Wistron-Y4A-Rev-3-Laptop-电气原理图纸s.pdf
- Acer-eMachines-D620-Wistron-Yukon-Laptop-电气原理图纸s.pdf
- Voyager 1400g 扫描器快速入门指南.pdf
- AT-779 User 使用说明书手册.pdf
- FT2DR_DE_使用操作说明书手册_EH060M201.pdf
最近下载
- 110KV输变电项目工程监理大纲.doc VIP
- 上海市初中英语必考考纲词汇详细解析拓展--字母B--教师版 .docx VIP
- 论语原文、注释、译文、评论.doc
- 母乳喂养PDCA分析和总结.docx
- PFMEA管理规定近年原文.doc
- 吉林省名校调研(省命题)2023-2024学年七年级上学期期末生物试卷.Doc VIP
- 高考语文一轮复习--戏剧阅读.pdf VIP
- 高中英语_The Road To Success教学课件设计.ppt
- 2025年山东鲁泰控股集团有限公司下属驻陕西煤矿企业招聘(150人)笔试备考题库及答案解析.docx
- 中国共产党的社会建设思想中央党校严书翰教授博导.ppt VIP
文档评论(0)