BT

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

使用RAD Studio XE4构建数据驱动和原生移动应用

| 作者 Anand Narayanaswamy 关注 0 他的粉丝 ,译者 臧秀涛 关注 4 他的粉丝 发布于 2013年5月10日. 估计阅读时间: 8 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

RAD Studio XE4是一款集成开发环境(IDE),用于创建面向多种设备的真正的原生应用,可以用一套代码基支持PC、iPhone、iPad及其他便携式设备。它包含了一系列原生用户界面控件,如按钮、文本框、列表框、组合框、日期选择器、定制选择器、不同的键盘类型及服务通知等。它还支持分享表单(ShareSheet),可用于通过社交媒体进行分享和打印。

借助RAD Studio,利用FireMonkey FM3,开发者能够使用一套代码基为诸如iOS、Windows和Mac等多种平台创建应用。此外,借助快速原型功能,开发者无需编码即可利用实际数据或模拟数据快速创建可视化的模型,然后将其部署到PC、智能手机和平板等真正的目标设备上。

RAD Studio XE4通过dbExpress、FireDAC和IBX提供了对IBLite和SQLite等iOS数据库的支持。借助dbExpress和FireMonkey,它也包含了ISV、企业类集成数据库连接和云计算。除了Windows Azure和Amazon Web Services之外,它还支持SQL Server、Oracle、Sybase、DB2、InterBase、SQL Anywhere、SQLite和MySQL。

RAD Studio XE4支持用户构建丰富的GUI客户端应用、HD应用、3D应用、Windows应用、Mac OS X应用和iOS应用、本地和远程数据库应用及基于Web和云的应用。据官方资料介绍,因为代码直接运行在设备上,所以使用RAD Studio开发的应用能够降低第三方攻击或破坏的风险。

尽管开发环境运行在Windows 7和8之上,但开发者也需要使用Mac来运行iOS模拟器,以及执行iOS应用最终的打包和分发。

InfoQ采访了Embarcadero公司的产品管理总监,以便了解RAD Studio XE4的更多信息。

InfoQ:你能否与我们分享一下开发RAD StudioXE4的主要目的?

我们的主要目标是提供一个业内首创的工具,解决开发团队普遍遇到的一个实际问题,换句话说,就是用一套代码基管理跨多种设备的应用开发,而且能够提供最好的性能。

目前,每个开发团队都要管理运行在多种设备和操作系统之上的应用,主要有两个选择,一个是使用厂商提供的工具(比如用于iOS的Xcode),另一个是使用脚本语言或虚拟机语言实现解决方案,以此获得代码复用所带来的业务效益。

使用厂商提供的工具,其优势是开发团队可以交付用户体验最好的应用。因为每种厂商工具支持的语言、应用框架和开发环境也有所不同,所以要支持不同的平台和设备,开发者不得不完全重写。这种方式代价很高。

另一方面,脚本语言方案(比如使用HTLM5/JavaScript)中代码复用率很高,但开发者必须在应用性能和用户体验之间进行权衡。RAD Studio XE4就是要填补这一缺口。

InfoQ:RAD Studio XE4对开发者有何帮助?

RAD Studio XE4最好地解决了上述两个问题。它支持多个设备,为一个团队、一份源代码基的组织带来了业务价值,但因为它是真正原生的,从而可以为应用带来最好的性能和用户体验。这样开发者也就有了一个工具,从而能够更快速地将应用交付到多种设备,而且具有最好的性能。

InfoQ:你提到了“真正的原生应用”,指的是什么?这能改进用户体验吗?

所谓真正的原生应用,我指的是直接运行在设备硬件上的应用,应用和CPU/GPU之间没有其他东西。比如Objective-C的工作方式就是这样。

源代码被编译为直接运行在硬件上的二进制信息。自从软件开发出现以来,对开发者而言,术语“原生”就是这个意思了。

比较而言,Java或C#等虚拟机语言和JavaScript等脚本语言实现的解决方案,都需要另一个进程动态地将源代码转换为CPU指令。这就给开发者带来了一些挑战和折中。

像这样的语言运行时基本上是个黑盒子,使得开发者无法调校其应用。而且运行时是另一个进程,也会分享CPU时间,所以还会引入延迟。带有垃圾收集机制的语言(大部分脚本语言)更是如此,因为开发者无法控制运行时何时执行垃圾收集和执行多长时间,也无法提前预测垃圾收集对应用的影响。最终的结果是,这些运行时对用户体验有负面影响。

真正的原生应用不依赖语言运行时或虚拟机,而且增加的性能对用户体验也有正面影响。

InfoQ:RAD Studio XE4和Visual Studio 2012有何不同?

最大的不同是,利用RAD Studio XE4,开发者还可以为微软之外的操作系统和设备构建应用。对今天的应用开发者而言,这是非常重要的。Windows仍然十分重要,但现在支持运行iOS和Android的移动设备也很关键。

InfoQ:是否可以使用RAD Studio XE4开发Windows Phone 8应用?

RAD Studio XE4支持在Intel处理器上构建原生的Window 8客户端应用。因此,开发者既可以为SurfacePro或来自其他厂商的Slates等平板构建应用,也可以为桌面版和服务器版Windows平台构建应用。Windows Phone 8使用了一个新的叫做WinRT的操作系统。我们主动评估了对WinRT以及开发者需求的支持。

InfoQ:RAD Studio XE4支持Android吗?

我们已经公开宣布今年下半年会支持Android。不过,因为该产品的特点就是用一套源代码支持多种设备,在我们支持Android之后,开发人员今天为iOS开发的代码无需修改就能在Android上运行。

InfoQ:借助RAD Studio XE4开发的应用在iOS和Windows环境中都能使用吗?

是的,这就是支持多设备的威力。正如前面所讨论的,这些应用的源代码可以是完全相同的。

InfoQ:在RAD Studio XE4中能否使用C#和VB?

不能,RAD Studio使用的是真正的原生语言,这意味着它们会被编译为机器代码,不会依赖像.NET这样的虚拟机环境。而C#和VB.Net都要依赖.Net运行时。我们支持Delphi和C++等原生语言。

InfoQ:你可以与我们分享一下RAD Studio XE4未来的路线图吗?

我们已经宣布,今年晚些时候,我们会支持Android,以及在iOS和Android上支持C++。

查看英文原文:Build Data Driven and Native Mobile Apps with RAD Studio XE4

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

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

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

真正的看好 by Java 陈

相比于phone gap等技术,更看好这个技术

允许的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通知我

1 讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT