BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Moscrif:用JavaScript进行跨平台移动开发

| 作者 Abel Avram 关注 7 他的粉丝 ,译者 雷慈祥 关注 1 他的粉丝 发布于 2012年11月23日. 估计阅读时间: 2 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

Moscrif是构建在定制虚拟机上的跨平台移动开发环境。尽管该平台提供了访问原生设备的功能,但编程语言却是JavaScript的一个定制版本。

据公司联合创始人Michal Habalcik所说,Moscrif已支持iOS、Android、Symbian、Windows Mobile和Bada等平台,而且还将在微软发布API之后,添加对Windows Phone 8的支持。Moscrif SDK提供了开源框架、基于Mono的集成开发环境以及各支持各种平台的发布工具。

除了核心功能,该框架还包含了大量类库,提供了对加密、2D游戏、图形、多媒体(OGG,WAV)、网络、传感器和SQLite的支持,还提供了简洁的用户接口。Habalcik还告诉我们,在不久的将来,他们打算支持原生用户界面,但这么做会对跨平台开发能力带来不利的影响。他们还打算将来添加对HTML5的支持,但是目前,Habalcik认为“HTML5有些严重的性能问题,所以不可能用来开发含有大量图形的高品质游戏”。

编程语言是JavaScript 1.x,通过原生实现的一级类、构造函数、命名空间、属性、lambda函数和迭代器等进行了扩充。源代码被编译成定制的字节码,在每个支持的操作系统中,字节码运行在C/C++/Objective-C和Java等语言编写的支持垃圾回收的虚拟机上。完全没有JIT编译。

集成开发环境也是开源的,它基于Mono + Gtk#做了些定制,用到了MonoDevelop的一些组件,例如文本编辑器。Moscrif不需要定制的构建服务器,关联的发布工具直接为每种操作系统生成二进制文件。应用发布到Apple App Store和Google Play等应用市场前,需要由Moscrif签名。我们还被告知,签名需要的不是二进制文件,而是包含包中所有文件哈希值的manifest文件。

查看英文原文Moscrif – Cross Platform Mobile Development with JavaScript

 


感谢臧秀涛对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

完全没有提到和phonegap相比的优劣? by jin zic

rtrtrtrtrt

Re: 完全没有提到和phonegap相比的优劣? by 雷 慈祥

区别原文也没有提到,
你可以看下原文下方的几个评论,Michal Habalcik对我提出的问题,做了回答。你可以参考下。
大概意思是,Moscrif虽然使用的编程语言是javascript,但是最终会将javascript编译成各平台的native code,例如java或者object c等。
而PhoneGap/Cordova基本上是基于webview来处理,如果用后者来编写性能要求较高的应用,它的表现肯定不尽如人意。
译者在前一段时间给一家汽车厂商基于Cordova,编写了一个收音机的小demo,应用跑在飞思卡尔i.MX53,但是性能表现不是很理想。

HTML5性能太差了? by 颂 赞

HTML5有些严重的性能问题,这和HTML5好像没有太大关系吧?应该是WAP浏览器

Re: HTML5性能太差了? by 雷 慈祥

HTML5只是一个标准,各个浏览器的实现都不一样。
这里的意思是说,浏览器呈现HTML5的性能等不是很理想。

Re: 完全没有提到和phonegap相比的优劣? by jin zic

我觉得你的理解和文章有区别。
“源代码被编译成定制的字节码,在每个支持的操作系统中,字节码运行在C/C++/Objective-C和Java等语言编写的支持垃圾回收的虚拟机上。完全没有JIT编译。”
字节码应该是类似于IL的中间代码,然后它开发了一个跨平台的虚拟机去实时运行这些字节码。“完全没有JIT编译”就说的更明确了。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

5 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT