移动应用中间件PhoneGap与mastudio的本质和来源分析

移动开发
移动应用的开发随着HTML5的发展,web app正成为移动应用开发的趋势,这个趋势的演变在历史上已经上演过。回想10年前HTML 刚刚开始的时候,那时候的PC上都是以VB\DELPHI\POWER BUILDER等工具来开发C/S的应用为主导,随着HTML的发展到HTML4标准,基本90%的应用都是以HTML4标准来开发的PC应用。这个过程难道现在在移动终端上不是在重演历史吗?

本文以两种典型的移动中间件类型作为支点进行分析其本质和来源,并以此作为延伸来描述更多中间件的定位和特点。

一、mastudio是什么?

mastudio是一个专业的企业级移动应用中间件,是一个综合全面的移动开发平台,提供了从客户端到服务器端完整的开发环境和数据接入能力。其在实现企业信息移动化上提供了便利的开发手段。

企业级移动信息化的一个重要特点就是原有的企业信息系统不希望受到影响,不希望在原有系统上进行二次开发来实现移动化。这就需要移动中间件能够具有单向接入的能力。mastudio平台在服务器端提供较强的接入能力,可以透过http协议访问各种企业级系统。

二、PhoneGap是什么?

PhoneGap是一个专业的移动应用开发框架,是一个全面的WEB APP开发的框架,提供了以WEB形式来访问终端设备的API的功能。这对于采用WEB APP进行开发者来说是个福音,这可以避免了原生开发的某些功能。

三、开发模式和技术要求

在开发模式上mastudio于PhoneGap有着截然不同的模式,下面以典型的hello world!为示范看两者各实现的过程。

PhoneGap的Hello world!

开发硬件需求:Mac 电脑+ iPhone手机+ Xcode 系统

开发者技术需求:熟悉xcode object c++ html js css

以下开发截图来自phoneGap官方网站,首先打开xcode 创建工程,然后添加index.html文件作为首页显示界面,最后编译启动模拟器执行。

mastudio的Hello world!

开发硬件需求:PC 电脑+ iPhone手机

开发者技术需求:html js css

以下开发截图来自mastudio开发平台,首先打开脚本编辑器,增加一个新文件helloWorld.mas,然后在其中调用wxWEBPAGE组件,组件中定义调用helloWorld.html文件,然后直接打开手机登陆访问。

从上面的过程可以看出PhoneGap是基于xcode的原生开发框架,需要开发者使用mac电脑熟悉object c++开发语言,而mastudio则是脚本开发框架,开发者使用普通PC电脑,熟悉一般性web基础知识即可。

四、优于PhoneGap的客户端优化

mastudio在客户端方面有优于PhoneGap的地方,其针对脚本使用方便性的特点进行了优化使用。这类优化的调用通过html js可以很方便的实现了多窗口交互以及弹出新窗口等功能。

多窗口交互

启动弹出窗口

五、弱于PhoneGap的客户端API

而PhoneGap的侧重是客户端的API调用,其提供了全面的终端上的开发能力,比如调用手机的通讯录、摄像、文件操作等。客户端API是PhoneGap的全部,这是优于mastudio的,而mastudio平台则提供了一般常用的API调用,如短信、拨打电话灯。

六、PhoneGap所不具有的

PhoneGap只是单纯的客户端,mastudio中间件包含了客户端和服务器部分,其提供的服务器具有强大的数据接入能力。

数据库访问能力

mastudio服务器提供了访问sql server、oracle等各种数据库的能力,客户端可以很轻松的通过服务器获取到数据。

http协议驱动能力

对于OA一类的WEB系统,需要登录身份验证后才能访问到页面内容,mastudio服务器提供了wxEXPLORE组件能够轻松访问各种web系统,驱动各种流程引擎、进行身份认证。

数据安全能力

PhoneGap提供了网络访问协议的API,但是无法提供数据安全性的处理,因为这是需要服务器协作进行的。mastudio服务器提供了客户端数据流的安全加密处理,而这个处理是不需要开发者介入就自动集成拥有的。

七、两种类型的总结

客户端类型

PhoneGap属于客户端类型移动中间件,其核心价值在于客户端的全面的API,提供了跨平台的开发便利性,但其近限于客户端应用。

平台类型

mastudio属于综合的移动中间件,其核心价值在于提供了业务数据的接入能力,并和客户端融合为一台,其客户端的API仅为业务数据展现而准备和封装。

八、移动中间件的延生

根据以上两种类型的移动中间件,市场还有众多的延生产品,以客户端类型为主导线的,如appCan、rexcee一类,他们的共同点在于针对PhoneGap的API模式进行的高一层封装,虽然还是提供了大量的API,但是让开发者方便的免去了原生开发环境的搭建。这是一个进步,但是由于进行了高一层封装,又导致了不可避免的调试问题,当封装层出现问题的时候,开发者无能为力。

以平台类型为主导的市场也有众多延生产品,笔者根据各自官方网站的资料分析,以平台类型的移动中间件多用于企业级行业用户,比如xmap、map、mkey一类,这类延生多是开发项目中的模块的简单提炼,并没有形成产品化的平台,虽然官方资料号称中间件产品,笔者认为这类产品还不够成熟,尚且达不到公开发版测试的程度。

总结

作为移动应用,如果计划采用移动中间件,作为选型的标准,笔者认为应当根据自身的业务特点类型来选择。如游戏、社交、电商、等类型则建议采用PhoneGap一类型的API客户端中间件,而对于企业数据应用、OA、Erp一类型,则建议采用mastudio一类型的中间件,这可以获得成熟的网络和数据接口基础。

责任编辑:佚名 来源: 51CTO.com
相关推荐

2013-05-16 14:35:03

移动中间件B2B2B企业级应用

2012-11-30 10:21:46

移动中间件

2013-07-29 15:48:40

移动OA中间件

2013-07-31 08:42:08

BaaS移动云服务移动中间件

2013-10-23 10:45:55

移动中间件最佳实践

2011-10-08 10:15:40

AdobePhoneGapNitobi

2022-11-18 07:54:02

Go中间件项目

2011-10-24 07:41:38

SOA中间件应用服务器

2014-04-08 09:15:28

金蝶中间件云计算移动

2012-02-07 08:58:21

IBM移动中间件收购

2022-05-10 09:24:44

中间件应用方案

2022-07-14 08:17:59

中间件微服务开发

2013-07-30 16:29:24

中间件

2016-11-11 21:00:46

中间件

2018-12-07 12:47:06

iPaaS混合云多云

2024-01-05 08:17:53

FiberGolang路由

2015-09-18 09:53:21

中间件移动开发APP

2016-03-31 17:33:52

移动信息化研究中心

2011-05-24 15:10:48

2021-02-11 08:21:02

中间件开发CRUD
点赞
收藏

51CTO技术栈公众号