一种基于AppCan的适用于HybridAPP开发的MVC框架系统技术方案

技术编号:16557065 阅读:291 留言:0更新日期:2017-11-14 16:42
本发明专利技术公开了一种基于AppCan的适用于HybridAPP开发的MVC框架系统,适用于AppCan IDE以上版本的开发环境,并采用MVC模式实现,本框架包括:用于处理业务逻辑的控制器层;用于与数据库进行处理的模型层,用来显示数据的视图层;独立文件夹;以及本框架起始页面,本系统框架的底层机制和逻辑通过BaseController.js模块和BaseView.js模块实现,并由起始页面激发加载。本发明专利技术实现了入口页面加载整个框架,所有的控制逻辑、业务逻辑、页面逻辑都由本框架处理的功能,所有的回调路径封装在底层,使整个系统逻辑清晰,不会混乱。这样做也便于系统功能的模块化,便于多人分工协作。

A MVC framework system for HybridAPP development based on AppCan

The invention discloses a MVC system framework based on AppCan for HybridAPP development, suitable for AppCan above version of the IDE development environment, and adopts the MVC model, the framework includes a controller for processing layer business logic layer; a model for processing and database, used to display the view layer data independence; the folder and the frame; the start page, the underlying mechanism and logic of the system framework is realized by BaseController.js module and BaseView.js module, and the initial page load excitation. The invention realizes the entrance page to load the whole frame, the control logic, the logic of all business logic, page by the frame processing function, all callback path package at the bottom, so that the whole system logic is clear, not chaos. This is also convenient for the modularization of the system function, so as to facilitate the division and cooperation of many people.

【技术实现步骤摘要】
一种基于AppCan的适用于HybridAPP开发的MVC框架系统
本专利技术属于IT
,尤其涉及适用于基于AppCan框架HybridApp(包括:android、IOS等)开发系统。
技术介绍
得益于HTML5的强大功能和快速发展,HybridAPP这些年逐渐火热起来。涌现了各种HybridAPP框架,AppCan就是国内自主开发的相对比较成功的一个框架。实际应用中发现该框架存在很多缺陷。首先没有一个固定的页面体系,呈现、逻辑和数据混合在一起,给页面开发带来混乱。其次,插件机制的局限性造成页面调度及进程调度机制混乱。最后,无法按功能、页面划分模块,并进行多人开发管理。造成这样的原因一方面和AppCan的针对的目标应用有关,其目标应用以内容展示型为主,对于复杂的业务逻辑并不擅长。另一方面和其发展阶段有关,目前AppCan框架还处于逐渐发展阶段。AppCan的HybridApp的依托于js语言实现。不同于JAVA,.NET等语言MVC框架众多,JS语言非常灵活,框架少,尤其是AppCan下的MVC框架几乎没有。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种基于AppCan的适用于HybridAPP开发的MVC框架系统,实现了入口页面加载整个框架,所有的控制逻辑、业务逻辑、页面逻辑都由本框架处理的功能;同时本专利技术中将所有的回调路径封装在底层,让每个动作都遵循相同的回调机制,是整个系统逻辑清晰,不会混乱。这样做也便于系统功能的模块化,便于多人分工协作。为解决上述技术问题,本专利技术采用了以下技术方案:一种基于AppCan的适用于HybridAPP开发的MVC框架系统,包括:用于处理业务逻辑的控制器层;用于与数据库进行交互的模型层,用来显示数据并和用户交互的视图层;用于存放包括js、css、图片文件的独立文件夹;以及本框架起始页面index.html,本系统框架的底层机制和逻辑通过BaseController.js模块和BaseView.js模块实现,并由index.html起始页面激发加载。进一步的,所述视图层存放包括所有页面显示样式和页面逻辑部分对应的文件。进一步的,所述控制器层保存页面或系统功能对应的所有动作及该动作回调方法。进一步的,所述模型层存放页面或系统功能的数据处理及业务模型处理。进一步的,所述BaseController.js模块用于实现所有其他业务模块的动态加载,并采用工厂模式,所述工厂模式为控制器层仅触发实例化当前使用的动作控制器。进一步的,所述BaseView.js模块主要实现的页面触发的业务时间调用控制层的流程及控制层返回的结果的处理。有益效果:相对于现有技术,本专利技术具有以下优点:解决了AppCan控制逻辑和回调逻辑混乱问题;解决了AppCan控制逻辑、数据逻辑、页面逻辑的分离问题;解决了AppCan多人分工协作的问题;解决了AppCan代码复用和维护升级问题。附图说明图1为本专利技术所述基于AppCan的适用于HybridAPP开发的MVC框架系统的框架图;图2为本专利技术所述基于AppCan的适用于HybridAPP开发的MVC框架系统的工作流程图;图3为本专利技术所述登录页面在本系统框架运行时调用流程示意图。具体实施方式下面结合附图并以具体实施例,进一步阐明本专利技术。应理解这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围,在阅读了本专利技术之后,本领域技术人员对本专利技术的各种等价形式的修改均落于本申请所附权利要求所限定的范围。如图1所示,本专利技术的基于AppCan的适用于HybridAPP开发的MVC框架系统,适用于AppCanIDE4.0以上版本的开发环境,并采用MVC模式实现,本框架的目录结构及重要文件的组成包括:(1)控制器层,用来处理业务逻辑层(对应controller目录);(2)模型层,用来与数据库进行处理(对应models目录);(3)视图层,用来显示出数据的层(对应views目录);所有页面显示样式、页面逻辑部分对应的文件都存放到views目录下。每个页面或系统功能对应的所有动作及该动作的回调方法,一般在一个文件内实现,并放到controller目录下。单个页面或功能的数据处理及业务逻辑处理都存放在做一个models文件内,并存放在models目录下,包括数据库和文件的操作;(4)HTML5页面层的js、css、图片等文件单独存放在其他文件夹内;(5)index.html是AppCan加载应用系统的起始页面,也是本框架的起始页面,整个框架的底层机制和逻辑分别在BaseController.js和BaseView.js中实现,这二个文件也是由index.html加载的。本专利技术中所有的控制逻辑、业务逻辑、页面逻辑都由本框架处理。必然造成大量的类或实例的加载,消耗巨大的资源不说,AppCan本身的回调机制也开始混乱。为解决此问题,本专利技术定义了一个基础控制页面,在此页面把所有用到的控制器实例工厂化。工厂化即用到哪一个控制器就实例化哪一个控制器,这样即解决插件自身被多次调用造成的混乱,又解决了多人分模块开发,提高效率。而BaseController模块中实现了对所有其他业务模块的动态加载,采用的是工厂模式,而不是类似java的继承。BaseView中主要实现页面触发的业务时间调用控制层的流程及控制层返回的结果的处理。所有业务处理模块xxModel.js都继承了BaseModel.js。该基础模块中集成了YDCDB模块,YDCDB模块是对数据库操作的封装。如图2所示,本系统处理流程如下:继承自BaseView的页面调用BaseView的baseControllerTrigger方法,触发对应的Controller内的具体方法,调用对应的model方法,处理业务逻辑,完成后回调对应Controller的结果处理方法。对应Controller处理完返回结果后,调用BaseController中的controllerReturn方法,返回到BaseView。BaseView中调用baseControllerReturn方法将controller层的处理结果根据view层传递的CB参数返回给对应的Veiw页面,触发动作的页面处理动作的返回结果。图中描述了整个框架的执行过程,如果是有页面出发的动作,经过控制器的分发,调用对应的控制器和业务逻辑处理模块,最后将处理结果一级级返回,最终返回到出发动作的地方,完成最终处理。以与底层交互方法为例,对一些重要的方法的实现过程举例:如图3所示,下面再以典型的登录页面在本系统框架中运行时的调用流程进行说明:例如,在视图层写请求方法与回调方法,实现用户名与密码的登录操作。本专利技术借助MVC构架思想,将页面显示、控制逻辑、业务逻辑分离开来,即视图、控制器、模型。要开发出符合此框架的AppCan应用,必须解决以下问题:(1)入口页面加载整个框架。由于本框架在AppCan框架之上,所以在AppCan的入口页面中加载本框架。本专利技术定义了一个基础页面index.html,AppCan启动时先加载该页面,用于初始化和运行本框架。(2)在本专利技术中,所有的控制逻辑、业务逻辑、页面逻辑都由本框架处理。必然造成大量的类或实例的加载,消耗巨大的资源不说,AppCan本身的回调本文档来自技高网...
一种基于AppCan的适用于HybridAPP开发的MVC框架系统

【技术保护点】
一种基于AppCan的适用于HybridAPP开发的MVC框架系统,包括:用于处理业务逻辑的控制器层;用于与数据库进行交互的模型层,用来显示数据并和用户交互的视图层;用于存放包括js、css、图片文件的独立文件夹;以及本框架起始页面index.html,本系统框架的底层机制和逻辑通过BaseController.js模块和BaseView.js模块实现,并由index.html起始页面激发加载。

【技术特征摘要】
1.一种基于AppCan的适用于HybridAPP开发的MVC框架系统,包括:用于处理业务逻辑的控制器层;用于与数据库进行交互的模型层,用来显示数据并和用户交互的视图层;用于存放包括js、css、图片文件的独立文件夹;以及本框架起始页面index.html,本系统框架的底层机制和逻辑通过BaseController.js模块和BaseView.js模块实现,并由index.html起始页面激发加载。2.根据权利要求1所述基于AppCan的适用于HybridAPP开发的MVC框架系统,所述视图层存放包括所有页面显示样式和页面逻辑部分对应的文件。3.根据权利要求1所述基于AppCan的适用于HybridAPP开发的MVC框架...

【专利技术属性】
技术研发人员:欧书云代永胜曹方
申请(专利权)人:南京物开网络科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1