跨平台打造移动原生应用的10大武器
扫描二维码
随时随地手机看文章
摘要:本文介绍了10款跨平台打造移动原生应用的工具,旨在帮助开发者们提高自己的编程效率。开发者可以根据这些工具的特点自行选取,从而直接降低开发成本,间接快速捕捉市场,提高收益。
编译工具对开发者的影响是直观的,开发者使用JavaScript等语言写出应用的代码,再将它们编译成原生代码。通过原生的API,完成跨平台的操作,最终分发到本地的应用商店中。由此可见,编译工具的选择可以直接降低开发成本,整个团队可以间接地快速捕捉市场、提高收益。今天我们为大家介绍了10款主流的原生转换编译工具,开发者们可以根据不同的特点来选取,提高自己编程的效率。
1.Adobe Air
Adobe Air是针对网络与桌面应用的结合所开发出来的技术,可以不必经由浏览器而对网络上的云端程式做控制,是一款允许你利用现有的web开发技能(包括Flash, Flex, HTML, JavaScript, Ajax)优势,建立和配置跨平台(或跨操作系统)的桌面RIA应用。
其特点如下:
网络应用离线化:同传统的Web相比,AIR的优势在于有客户端的优势,可以脱机运行程序,在需要的时候偶尔连接一下网络,比如可以离线写博客,发布的时候连接一下网络。
跨平台、低开发成本:跟传统的桌面应用程序相比,AIR程序可以跨平台,支持多操作系统,开发成本较低。
出色的交互表现:AIR凭借Flash技术本身的特征可以带来更吸引人的交互表现,相比其他传统的Web技术要出色。
运行速度更快:因为AIR程序均是在本地运行,而网络应用程序在网络客户端和服务器之间进行调用,需要调用大量数据和代码,所以AIR程序的运行速度要快一些。
2.FireMonkey
Firemonkey是一个基于CPU/GPU混合架构的业务应用平台,能够帮助开发人员设计出Windows、Mac和iOS设备上的视觉绚丽的本地应用程序。 Firemonkey允许开发人员创建具有快速的本地性能、动画和图像效果、企业级的数据连接以及交互式数据可视化的富HD和3D的图形应用程序。
3.Gideros Mobile
使用类似Flash的功能来开发游戏或者应用,虽然不如上面的一些工具简单,但你也无须懂特别高深的编程语言,还能对已有的代码循环利用,开发好之后,可以在电脑或者其它设备上立即进行测试,无需反复导代码。
4.J2objc
J2ObjC(Java to Objective-C)是Google出品的一个开源的命令行工具,允许开发者将Java代码转换成适用于iOS平台的Objective-C代码。这意味着,开发者编写的Java代码可以成为iOS应用程序的一部分,且无需对生成的文件进行编辑。
J2ObjC支持Java语言和运行时的大部分特性,包括异常、内部类/匿名类、泛型类型、线程和反射等,同时也支持转换和执行JUnit测试。
5.Livecode
LiveCode 原名 Revolution,是一款源自 HyperTalk 的用于快速应用程序开发语言。LiveCode 语法结构和自然语言接近,比较适合编程初学者掌握。此外 LiveCode 具有良好的跨平台支持,可以创建 Linux、OS X 和 Win 桌面应用, Android 和 iOS 手机版的应用,以及无 GUI 的服务器端应用。
LiveCode 5.X 及更早的运行时环境仅有闭源版本,若想用其进行开源软件开发限制非常大。经过今年年初的 KickStarter 募集后,成功推出改良核心的 6.0 版本,包含了支持拖拽布局的 IDE 和多平台部署分发工具,可安装于 Linux、OS X 和 Win 系统上。
6.Mono
Mono是一个由Novell公司(先前是Ximian)主持的项目。该项目的目标是创建一系列符合ECMA标准(Ecma-334 和 Ecma-335)的.NET工具,包括C#编译器和共通用语言运行库。与微软的.NET Framework不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,OS X 和 Solaris。
7.J2ME Polish
J2ME Polish是用于开发J2ME应用的工具集: 从一份源代码中为多种设备和多种语言创建应用的建造工具(build tools)。一个设备数据库,您的应用可以用它通过预处理为不同的手机进行调整。 一套用户界面(GUI),,可以在应用程序代码之外进行设计。 工具类(Utiliy classes),如BitMapFont 和ArrayList。 编辑修改二进制文件的独立工具。
8.Qt
Qt是CSDN的读者比较熟悉的开发工具,它是一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
使用Qt的公司包括三维建模(Autodesk Maya)、Adobe Photoshop Elements(Adobe图像处理)、Skype、 VLC 播放器。欧洲太空总署、谷歌、HP、卢卡斯影业和Opera移动浏览器也都有使用Qt技术。
9.Sencha
Sencha 是由 ExtJS、jQTouch 以及 Raphael 三个项目合并而成的一个新项目。Sencha Touch 是全球领先的应用程序开发框架,其设计旨在充分利用HTML5、CSS3 和Javascript 来实现最高级别的功能、灵活性和优化。Sencha Touch 是针对下一代具有触摸屏设备的跨平台框架。其特点如下:
基于最新的WEB标准:HTML5,CSS3,JavaScript。整个库在压缩和gzip后大约80KB,通过禁用一些组件还会使它更小。
支持世界上最好的设备。Beta版兼容Android和iOS,Android上的开发人员还可以使用一些专为Android定制的主题。
增强的触摸事件。在touchstart、touchend等标准事件基础上,增加了一组自定义事件数据集成,如tap、swipe、pinch、rotate等。
数据集成。提供了强大的数据包,通过Ajax、JSONp、YQL等方式绑定到组件模板,写入本地离线存储。
10.Codename One
Codename One是一个针对移动应用开发者的、开源的、跨平台的Java工具,旨在帮助Java开发者通过单一代码库来针对所有移动(智能手机和平板电脑)平台构建本地应用。
Codename One由Chen Fishbein和Shai Almog开发,这两人都曾供职于Sun公司。Fishbein称,Codename One使移动应用开发工作更加快速、容易,Java开发者可以构建iPhone/iPad (iOS)、Android、Windows Phone、Blackberry等平台上的应用,且无需在应用性能、功能或开发简易性方面妥协。