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

阅读数:1594 2013 年 5 月 9 日

话题:iOS语言 & 开发

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