MVC架构模式在APP开发中的应用

2017-11-15 16:54潘华强
电脑知识与技术 2017年28期

潘华强

摘要:该文首先介绍了无线城市的概念,然后提出了移动APP开发中常用的MVC架构模式,最后结合IOS客户端重庆无线城市项目“重庆城”,论述MVC架构模式在该APP开发中的具体应用。

关键词:无线城市;MVC;架构模式

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2017)28-0084-02

Abstract: This paper first introduces the concept of wireless city, and then puts forward the MVC architecture model which is commonly used in mobile APP development. Finally, the paper introduces the application of MVC architecture model in the development of APP in combination with IOS client.

Key words: wireless city; MVC; architecture model

1 “无线城市”概述

2004年7月,美国费城提出“无线费城计划”,该计划是基于WLAN(Wireless Local Area Networks)标准的无线网络。随后类似的无线城市计划开始席卷全球。2013年,中国移动TD-LTE网络达到7M/S,移动端网速的快速提升,为无线城市时代的到来提供了最重要的基础条件。当前,中国的北京、海南、广东、江西、安徽、湖北、重庆等31个省份都已经建设了类似项目。

1.1 重庆城功能介绍

“重庆城”为广大用户提供便捷的“一站式生活服务”,便于市民随时、随地畅游所在城市,获取丰富的当地生活信息,受到市民群众的好评。其功能包括:预约挂号、交通指南、抢车位、宽带服务、教育医疗、便民服务、吃喝玩乐、生活娱乐等。

1) 预约挂号:提供医院的医疗信息,便于患者及时、便捷的预约挂号。

2) 交通指南:为市民提供实时的公共交通信息,便于市民乘车。

3) 抢车位:基于GPS地理定位技术,获取附近车位信息,便于广大车主找到空余车位。

4) 宽带服务:输入信息,即可免费预约办理宽带业务。

5) 便民服务:为市民提供当地的各种服务咨询,便于查询各类政务信息。

6) 吃喝玩乐:汇聚当地各类生活信息,便捷各类人员在当地的生活。

2 MVC架构模式

IOS端“重庆城”项目涉及的功能模块较多,而传统的基于网络的应用系统中,数据库的访问、用户界面设计、业务逻辑混合在一起,这种架构模式非常不便于后期需求的调整,一旦需求有变动,会给后期维护带来很大的不便。基于分层的架构思想应运而生,MVC架构模式是一种典型代表。

MVC不是一种设计模式(Design Pattern),而是一种架构模式(Architectural Pattern),用以描述应用程序的结构以及结构中各部分的职责和交互方式。MVC是Model View Controller的简称,包括模型(Model)、视图(View)、控制器(Controller)这3个层次,它是一种广泛应用于移动端系统的架构模式。

2.1 MVC三层架构

MVC模式能够将模型层(Model)和视图层(View)实现代码分离,控制器(Controller)则是保证模型层和视图层的同步,模型层如果有改变,视图层也会保持更新。

模型(Model):模型层用于封装与业务逻辑相关的数据以及对数据的处理方法,一般来说模型对象可以读取数据库中的数据,模型层不关心它会如何被显示。

视图(View):视图层主要基于界面展示相关信息,视图可以有多个,控制器决定使用哪个视图,视图一般是根据数据模型创建。

控制器(Controller):它是应用程序中处理用户交互的,用户点击视图上的控件,控制器能接收到基于HTTP协议的GET、POST请求。

2.2 MVC原理

MVC(Model-View-Controller)架构模式的原理并不复杂,应用程序必须能区分相应的功能。

MVC架构模式对于小型甚至中型的应用程序并不合适,会带来很大的額外工作量,增加应用的复杂性。对于存在大量界面、逻辑复杂的大型应用程序,MVC架构模式虽然会增加一些工作量,但也能够增加系统的稳定性,长远来看,会提升系统的运行效率。

3 MVC架构模式的代码实现

移动端”重庆城”项目,因其涉及的界面较多,传统的架构模式不能满足需求,采用了MVC三层架构。项目上线后,Android市场和App Store里该应用累计下载量达到200余万次,用户体验良好,后台运行稳定,受到广大重庆市民的欢迎。

4 总结

相比传统架构模式,MVC架构模式有不少优点。其不足体现在以下几个方面,后期有待优化。

1) 增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。

2)视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。

3)视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。

4) 目前,一般高级的界面工具或构造器不支持MVC模式。改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成使用MVC的困难。

参考文献:

[1] 孔颖,孙秀明,范君君.基于MVC模式的应用软件开发框架研究[J].中小企业管理与科技旬刊,2016(2):205-205.

[2] 刘姝君, 左乐.MVC模式下的应用软件开发框架初探[J].通讯世界,2017(5):281-282.

[3] 许鑫,费翔林.基于MVC模式的应用软件开发框架研究[J].计算机工程与应用,2005,41(30):102-104.endprint