I am a little confused. I keep seeing articles of how Adobe AIR can let you download apps that run on the desktop. Don't we have this already? How is this different from any WinForms or WPF application? Just the fact that you can download it from the web? Am I missing something?
You can build desktop applications with languages more commonly associated with web development. In other words, you can build a desktop application using HTML/CSS and JavaScript, or Adobe's Flash technology (more commonly used). That's what makes it different. It also has some really nice built-in features such as auto-update and an embedded SQLite database for storage, and installation is taken care of for you.
I would say adobe air is Adobe's answer to click once deployment. Also included, this give a way for flash designers to extened there web applications as desktop applications such as twhril for twitter. Microsoft's answer back will be the Silverlight 3 which should be availible next month.
To me I don't think there is much differnce beside letting a web developer run their applications on the desktop vs a desktop developer trying to customize there app for the web. All in all I say its just another flavor of a thin client.
Adobe have taken the run-anyware idea of web browser and web-server and created a desktop application framework. This means you can build a "website" that runs without a server.
There are a few nice things with this approach. The main one is that it makes it possible to do things locally that a website cannot do, like read and write files, or create native windows. And because the "browser" it runs in is a known quantity, you can take advantage of that with WebKit-specific extensions. Or you can just build it in Flash. Or combine the two as you need.
Adobe have also leveraged the cross-platform quality: both key pieces of AIR (Flash and WebKit) are already available on Windows, MacOS and Linux, so it was not that much of a stretch to make the whole of AIR cross-platform. This gives a really neat effect: the same
.air file should install on any
AIR install. And will run the same.
Adobe Air competes in the space currently known as "Rich Internet Applications" (RIA). The concept here is to make web applications that have user interface elements that are more powerful than what is available in a browser. Competing in the space of RIA are:
- Adobe Air / Flash
- Microsoft Silverlight
- JavaFX
- HTML/CSS/Javascript (as seen from Google's web applications)
The point is to deliver desktop applications that combine features of web applications, such as:
- one-click deployment / always running the most up-to-date code
- a rich set of programmer libraries / APIs compared to what's available in the DOM
- ability to deliver media content outside of what's available in HTML
In addition to the points provided above, AIR applications are can run on MacOSX, Windows and Linux. The one-click deployment, deploys not only the application, but if necessary, the run-time and the run-time is a small download.
Sure, you can do things in WPF - if you're a .NET programmer. You can likewise do things in Java if you're a Java programmer. If you're a Flash/HTML/JS/web programmer, you can use AIR. Other than that, you're not missing anything.