Sunday, July 8, 2007

Book Review: Adobe Integrated Runtime (AIR) for JavaScript Developers

Off late I have been following the latest developments in Adobe AIR technology. Recently I stumbled upon the book “Adobe Integrated Runtime (AIR) for JavaScript Developers “, which is written by Mike Chambers, Daniel Dura & Kevin Hoyt in 2007. I have been able to get a free electronic copy of this book from both ajaxian website and Adobe’s website . I am likely going to be getting a paper of copy of the book at the on AIR Bus Tour SUMMER ‘07.


This book has been written in a very simple and easy to understand language. It offers good discussion on evolution of web technologies in the recent past. It notes that Macromedia coined the word rich internet application (RIA) through a whitepaper in 2002. Essentially this paper says that the RIA clients should be able to support not only desktop operating systems, but also other platforms as smart phones, PDAs, set-top boxes, game consoles, and Internet appliances.


Some of the initial pages have been dedicated towards limitations and challenges faced by current web sites. It essentially says that existence of multiple operating system, and multiple browser environment poses grave difficulties to web developers. Developers are required to develop and maintain separate code for the same functionality to support the diverse operating environment. Moreover, web-consumers do not get a consistent UI experience across web-sites, specially back-button handling is very erratic. Besides, the current web applications do not have access to the desktop resources such as files and folders.


AIR has been developed to addresses such issues. AIR allows developers to create one unified application capable of running across all the operating systems. AIR applications can be written in both JavaScript and ActionScript, however, the book only talks about JavaScript. A very simple example to create “Hello World” example is provided; later on areas as cookies, windowing, Ajax support, security, file system calls, drag and drop, embedded database, networking, and sound have been discussed with sample code.


Frankly I have not played with all the examples, just a handful; however, I found them to be useful. I must admit that the very first example “Hello World” was a bit frustrating to deal with, as the sample contained some typo. As we all know Adobe AIR was formerly known as Apollo, it seems that this sample was half-converted to the new naming convention. It would have saved an hour of my time troubleshooting and hunting through the forum if “ApolloHelloWorld.html” would have been mentioned as “AIRHelloWorld.html” on page 30. Anyway, I have noted it here just in case someone else needs it. Besides, the typo I think the book has also been silent on other features of a desktop application such as threading, inter-process communication or ability to access registry settings. I am thinking none of these are supported.


I will post more on this after I attend the upcoming on AIR bus tour next week.

1 comments:

mesh said...

Nice Review. I am sorry about the error you ran into, and will make sure to post the fix in the errata section of the book's website.

Thanks for posting the fix here.

mike chambers

mesh@adobe.com