跨平台工具如何更容易为iOS和Android开发

如果您正在为Android和iOS构建应用程序,跨平台移动开发工具可以让您更高效。只是不要指望结果看起来很漂亮。

Android和iOS是两个关键移动操作系统。不是巧合的,他们是两者也对App开发人员造成巨大的头痛。

那是因为如果您为Apple和Android的方式开发Apple和Android的应用程序,您需要为两个不同的平台开发和维护两个源代码基础。这意味着不同的工具(Apple Xcode.Android SDK.),不同的API,不同的语言等等。

如果你参与其中开发用于在您的企业内使用的移动应用程序你有一个Byod政策,事情很快就会变得更糟:如果Windows Phone 8获得牵引力然后,您可能必须支持的平台数将从两到三个扩展。

“在移动开发人员中有巨大的需求,特别是在移动发展迅速升级的企业中,增加发展的发展,”al hilwa.,IDC的软件开发研究计划总监。

跨平台移动发展的市场“迅速增长”

一个解决方案是使用JavaScript或HTML5.- 以多个操作系统渲染的语言。但这些没有被证明是许多开发商希望的理想选择。性能往往令人失望,维护可能是耗时的,并且他们提供给特定的设备功能的访问通常是有限的。

更有前途的解决方案可能是多平台开发环境,让您开发单个代码库并将其编译为在不同的移动平台上运行。XAMARIN.例如,允许您在C#中编写应用程序,直接调用任何本机平台API。然后,XAMARIN编译器捆绑在.NET运行时并输出本机臂可执行,打包为iOS或Android应用程序。

Embarcadero的rad Studio XE5是否类似的事情,用代替XE5编写的代码编译成Apple或Android设备硬件的本机二进制文件。其他选项包括Appcelerator钛合金IBM Worklight.和Adobe的开源PhoneGap.,这在云中进行了编译。

新闻:Adobe Ships PhoneGap构建简化跨平台开发也:Appcelerator的钛现在附带云服务

“这绝对是一个令人兴奋的市场,而且一个正在迅速增长的市场,”Hilwa说。

Embarcadero:编译到Native Code会导致更好的性能

那么这些类型的跨平台工具如何解决HTML5和JavaScript所遭受的问题?Embarcadero的产品管理总监John Thomas表示,编译致原始代码不需要涉及绩效命中。他说,随着Android,性能甚至可能会得到增强。

“苹果做了很大的工作,iOS非常优化。我们使用本机代码提供的性能是可比的,”托马斯说。由于Android应用程序在Dalvik VM内运行的方式,故事与Android不同。“即使正常编译,有一个绩效命中,“他说。

“此外,VMS在应用程序运行时进行垃圾收集,因此性能是非确定性的,”托马斯说。在CPU上运行ARM代码,因为Embarcadero呢,消除了对垃圾收集的需求。这提高了性能和内存管理,他说:“这是完全确定性和非侵入性的。”

单语言移动应用程序DEV提供生产力收益

在编码和维护方面,这些多平台开发环境的整个点是它们应该易于使用和维护。例如,Xamarin的使用C#意味着它应该吸引Windows开发人员。此外,Visual Studio加载项,开发人员可以从单个熟悉的环境中开发Windows,iOS和Android应用程序。

有关:9最热门的移动开发技能也:AWS提供移动开发人员跨平台推送通知

对于Embarcadero的方法而言,这种情况是不同的,因为Delphi XE5不是标准的开发语言。托马斯认为它很容易学习。“Delphi和C#由同一个人开发,所以基本上他们是相同的语言,”他说。“使开关很容易 - 肯定比适应JavaScript或HTML5解决方案更容易。”

然而,正如Gartner研究员一样Kirk Knoernschild.指出,使用多平台环境并不一定意味着您可以为两个平台开发,这是一个与其需要开发的相同努力的平台。

“如果您想利用特定的平台功能,您必须使用特定于平台的代码,”他说。“如果你只编写简单的应用程序,你可以有一个代码基础 - 但只要你尝试和利用独家平台功能,你就不能再做了。对于一个复杂的应用程序,你可以希望的是60到60到80%的代码[是]平台 - 不可知论。“

即使您必须编写特定于平台的代码,KnoernSchild也表示,使用多平台环境仍有优势:“您正在以单一语言编写,因此仍有生产率收益。”

使用跨平台工具构建的移动应用并不总是很漂亮

这只是让应用程序本身 - 具体而言,他们可以访问什么以及它们的样子。在这里,在制作应用程序方面存在潜在的问题:接口元素并不总是看起来与真实的IOS或Android元素完全相同。

特征:10个尖端移动开发工具更多:7必须尝试移动开发人员工具

例如,Embarcadero可以调用IOS或Android日期选择器等项目,以便它们看起来与“正常”IOS或Android应用程序中出现的项目相同。但是,另一方面,按钮被绘制,看起来像iOS或Android按钮而不是相同的。“我们的iOS应用程序看起来靠近真正的iOS应用程序,”托马斯说。“与Java应用程序出现在Windows中的方式没有相同的差异。”

在消费者空间中,有一种风险,不接受不像真正的iOS或Android应用程序的应用程序。这肯定是Dan SenseCall,多平台移动应用程序开发人员联合创始人的观点tappcandy.。“如果您使用像Embarcadero这样的跨平台开发软件,那么”我们“只会自然地开发应用程序,”如果使用Embarcadero这样的跨平台开发软件,“他说。“坦率地说,它产生的应用程序看起来naff。最终的质量永远不会好。”

但是,这种类型的视觉差异可能不是开发人员对内部企业使用的多平台应用程序的问题。Idc的Hilwa说,这里需要“在那里”,而不是使应用程序看起来很漂亮。“与消费者空间不同,如果他们可以从开发人员那里获得更多的生产力,企业更愿意妥协,所以跨平台工具是一个大问题。”

跨平台移动开发工具将来的问号

跨平台工具是否将来将继续成为“大交易”仍有待观察。根据Gartner的knoernschild,Open Web技术,如HTML5,JavaScript和CSS尚未注销。

“随着这些网络技术成熟,将有机会使用它们开发竞争对手应用程序的跨平台应用程序,”他说。“特别是对于不需要特别复杂的功能的公司,跨平台工具将来可能面临来自HTML5,CSS和JavaScript的一些严肃的竞争。”

Paul Rubens是一位基于英格兰的技术记者。在Paul@rubens.org联系他。遵循从Cio.com上的所有内容@cioonline.Facebook.谷歌+linkedin

阅读更多关于Android的信息在CIO的Android钻取。

这个故事,“跨平台工具如何使IOS和Android都更容易开发”最初发布CIO.

加入网络世界社区有个足球雷竞技appFacebook.linkedin评论是最重要的主题。

版权所有©2013.Raybet2

IT薪水调查:结果是