日期:2014-05-17  浏览次数:20659 次

跨平台开发工具Titanium的兴起之路:HTML5是最大威胁(转载)
Apple的iPhone和iPad如今或许是最有型的装备了——事实上,San Francisco博物馆的现代艺术部分(the San Francisco Museum of Modern Art)已将其在工业设计展览中展出。与它有型的外表相比,它的iOS设备却使用了一种相当古老的语言:Objective-C。这个语言在1980年代晚期就开始占据统治地位了,主要是Steve Jobs的NeXT用来为公司的工作站设计用户界面的。

Objective-C与大多数现代编程语言和脚本语言比如Javascript、Python、 Ruby相比,不够强大,且更难学,因此追随者也少。“世界上很少有人知道Objective-C了,” Jeff Haynie说。与此相反,“有八百万到一千万Web开发者知道Javascript和HTML。”与Apple类似,Google的Android也好不到哪里去,Android操作系统是基于Java的——另外一个即将消亡的过分讲究的语言。

Haynie的观点是,开发者没有必要再去学Objective-C或者Java去给当今发展最快的计算平台——智能手机和平板电脑写应用了。而这,就是Appcelerator公司得以发展的原因。Appcelerator公司是Haynie在2007年在Atlanta,GA与其他人联合创立的一所公司,并于2008年搬到了硅谷。这个公司在新的风投中已经获得了15,000,000美元,它主要的产品是一种软件,这种软件能让用Web语言编写的程序转化成在iOS和Android上一样跑的很好的移动应用,甚至能在Mac和Windows机器上运行。

现在iTunes应用商店中的500,000应用中,有几乎五分之一是基于Titanium开发的,Titanium是Appcelerator公司旗下的跨平台开源开发框架。这个框架最成功的案例是NBC Universal的iPad应用,这个应用可以让用户观看NBC节目、玩游戏等。“这个应用是由一个Javascript开发者在三个月内写成的。” Haynie说。而之前尝试用Objective-C开发这个应用,“花了四个人六个月时间,很贵,完全是一场灾难。”


Appcelerator co-founder and CEO Jeff Haynie


Appcelerator并不是唯一一个可以让开发者避开为iOS或者Android设备写本地代码(用Objective-C或者Java写的代码)的公司。它最大的直接竞争者很可能是Rhomobile,一个由Motorola在十月收购的公司。Rhomobile创建了Rhodes,一个开源框架,这个框架可以将用Ruby写的应用转化为iPhone、Android、BlackBerry、Windows Mobile和Windows Phone的本地应用。但Rhodes主要是由企业用户的开发者使用,而Appcelerator更多用在消费者应用上,比如NBC的应用。

Appcelerator或许有一个更可怕的对手——HTML5。很多开发者使用HTML5来开发基于浏览器的游戏以及有着本地应用外观和感觉的应用,并直接通过浏览器发布它们,而不必再到Google或者Apple的应用商店获得授权了。如果HTML5能打破这一封闭、受控的应用程序生态系统,它将会切断Appcelerato的财路。事实上,Rhomobile的CEO Adam Blum说他认为Appcelerator“在HTML5的势头之下,处于一个完全不能获胜的境地。”但Haynie说Appcelerator也在为这样一个未来做准备,最近它收购了一个Palo Alto创建的名为Particle Code的公司,这个公司的软件产品能自动从其他代码库创建HTML5的应用程序。
但是,在目前,大多数移动开发者的选择顺序还是iOS、Android、Windows、HTML5。在这一广泛的平台分布下,开发者别无选择,只能去想办法开发跨平台的应用。Haynie说:“在我们看来,有四个拥有不同开发技能的团队是不理性的,对行业来说也不是长久之计。Appcelerator就能为改变这一状况派上用场。”

Appcelerator最开始并不是面向移动商务的公司。据Haynie介绍,他最初在军队中作为电子战技术人员(an electronic-warfare technician)工作,接下来在Southern Illinois University获得了计算机科学学位。他最终在Atlanta与人联合创立了一个名为Vocalocity的互联网语音公司(voice-over-Internet company),其中的八号员工Nolan Wright与他一起创建了Appcelerator,希望能将他们在帮助Web开发者创建语言呼叫应用时获得的技能排上用场。

Wright and Haynie在头一年通过合同应用开发支持公司,但他们主要的项目是Titanium。Haynie说这个平台最初是为Adobe的跨平台运行环境(cross-platform runtime environment)Air服务的。它能让Web开发者将Javascript、HTML代码以及CSS样式表转换成能在Windows和Mac OS X上运行的应用。


Zipcar's mobile app, as rendered by Appcelerator Titanium for the iPhone (left) and Android (right).

Haynie说,桌面工具仍然是他们产品的核心基础,但发展速度没有移动应用快。在Apple将iPhone开放给第三发开发的应用之后,帮助Web开发者构建移动应用成了Appcelerator 2008年的焦点,这一策略来自于Haynie的灵感。为更接近这一策略,公司重新分配了10个员工到Mountain View, CA,并开始调整Titanium让其能消化HTML和Javascript,生成Objective-C的本地应用。在2008年12月,Appcelerator获得了它的第一轮风投——4,100,000美元,投资者是courtesy of Storm Ventures。

现在,Titanium为人们所熟知是一种工具,这个工具能使原本用Web语言写的iPhone应用感觉起来像是用Objective-C写的。这个平台能让开发者让他们的应用感觉更像本地的,它提供给开发者数以百计的预先编译好的可定制的软件元素,从用户界面控件(按钮、选项卡、滑动条等)到集成的地图、相册浏览器等。它还提供一种代码,让开发者可以将他们的应用连接到云服务和移动ad网络(如Apple的 iAd)上去。

Haynie说,由于Appcelerator拥有的模块是随时间积累的,因此使用Titanium能为开发者节约大量时间,即使开发者原本就知道Objective-C。“如果你想要做一个包含视频或者增强现实(augmented reality)或者复杂UI的应用,你需要处理内存管理、垃圾回收等类似工作,这些如果用本地代码来完成需要好几千行代码,但用Titanium只需要三行代码。这能减少开销,提升速度。”

在Google凭借Android进军移动市场后,Appcelerator将Java也加入到自己的产品处理阵营中了。随后对BlackBerry OS和Windows Phone进军移动市场,Appcelerator也如法炮制。但Haynie十分谨慎,他说Titanium并非是“一次编写,随处运行”的。开发者仍然需要针对不同平台做一定的适应性修改。Haynie说,很多坏的产品就是在“一次编写,随处运行”的名义下写出来的。“我们认为这其中存在着80/20比例,即这个工具的80%都是可以跨平台的,但另外20%必须人工完成。”

像很多其他的初创公司一样,Appcelerator有一个增值定价模式(a freemium pricing scheme)。下载使用有基本部件的Titanium是免费的,但一旦对Titanium形成依赖,想要包含更多部件的话就需要升级到“Indie”并每月支付49美元。如果你想要获得来自于Appcelerator的支持、辅导和调试(support, handholding, and debugging),你就需要签订一个企业合同,每月支付499美元。

Appcelerator目前有115名员工,三个星期前,它结束了它的第三轮融资,这其中的投资者包括return backer Storm Ventures 、Mayfield Fund、 TransLink Capital、Sierra Ventures、strategic investors eBay和