Back

titanium 的目的 (what is titanium trying to accomplish)

发布时间: 2015-01-18 22:57:00

refer to:  http://www.appcelerator.com/blog/2012/05/comparing-titanium-and-phonegap/

之所以单独拿出来,是觉得这个方法论太重要了:

What is Titanium Trying to Accomplish?

Titanium的目标,是提供一个高级的,跨平台的运行时API。
The goal of Titanium is to provide a high level, cross-platform JavaScript runtime and API for mobile development (today we support iOS, Android, Mobile Web, BlackBerry 10, and Windows Phone coming soon). Titanium actually has more in common with MacRuby/Hot Cocoa, PHP, Xojo or node.js than it does with PhoneGap, Adobe AIR, Corona, or Rhomobile. Titanium is built on two assertions about mobile development:

在移动web开发中,总有些功能是通用的。 (例如70%~90%), 少部分功能是不同平台特有的。所以Titanium 不是一次写好,到处运行。
但是,Titanium 希望 HTTP request, 画个长方形,这些非常常见的操作,是所有平台通用的。

There is a core of mobile development APIs which can be normalized across platforms. These areas should be targeted for code reuse.
There are platform-specific APIs, UI conventions, and features which developers should incorporate when developing for that platform. Platform-specific code should exist for these use cases to provide the best possible experience.
So for those reasons, Titanium is not an attempt at “write once, run everywhere”. We think there are great, user-experience enhancing features across multiple platforms that developers should be using. We think that native apps should, take advantage of familiar, high-performance native UI widgets. However, we think it is unnecessary that native developers need to learn platform-specific APIs to draw a rectangle, or make an HTTP request.

所以,在Titanium 中,我们写javascript代码,来实现 native app. 
Titanium is an attempt to achieve code reuse with a unified JavaScript API, with platform-specific features and native performance to meet user expectations. When you write a Titanium application, you are writing a native application in JavaScript. Titanium is a framework for writing native apps, versus an abstraction from the actual platform you are targeting.

Back