Even though the technologies used to create it are Web based, an AIR appli- cation looks and feels like a normal Windows or Mac OS X program. It runs in its own window, has its own icon, and integrates with the menu system or taskbar. And it generally has the performance you would expect from a native operating system application. In fact, users will interact with an AIR app (see Figure 1-1) just the same as they do with any other application on their desktop.
Creating Internet-savvy apps
An AIR application is technically not standalone. It is actually “powered by” the Adobe AIR runtime that must be installed on any computer in order to run the application. Therefore, when an AIR app is launched, the AIR runtime is automatically loaded behind the scenes prior to the loading of the app.
When you create an AIR application, you build the app using Adobe Dreamweaver, Adobe Flex, Adobe Flash, or any text editor. (In Chapter 2, I show you how to create a basic HTML-based app in a text editor and Dreamweaver. Chapter 3 shows you how to create a basic app in Flex and Flash.)
As you can see, many parts of the application use Web techniques and tech- nologies that you’re already used to working with. However, core to Adobe AIR is an application programming interface (API) that you can tap into to do real “desktop stuff,” such as get access to local files, open native UI windows, create menus, and so on. I walk you through the API in Chapter 4.
As you begin to explore the AIR API, you will see that the key strength of Adobe AIR is not in creating word processors or spreadsheets (although you can), but rather in enabling Web developers to shed the browser and safely deploy Internet-savvy apps onto the desktop.
An AIR application is easily delivered to users with a single downloadable installer (which has an .air extension) regardless of the operating system. (See Chapter 14 for more on deployment.)
Developers can create Internet-based desktop apps to some extent through widgets and Java, but both of these technologies have restrictions or limita- tions that have kept them as niche players. Widgets are intended for limited single screen, display-oriented purposes (such as a stock ticker). Cross- platform applications using Java runtime have traditionally suffered in com- parison to native OS apps — in terms of both performance and “look and feel” issues. Also, both widgets and Java apps are much weaker in working with rich media than Flash has been.
In fact, you may want to jump over to Chapter 16 of this series-tutorials to take a quick look at ten great AIR applications that help demonstrate the power of the platform.