C++/Qt vs Adobe AIR

I have to choose a platform for our product. I have to decide between The Qt Framework and Adobe's AIR. I am well versed with Qt as I have worked for the last two years. I looked up at the Adobe's site but all the info about flex, flash, ability to coding in HTML/ActionScript is overwhelming and confusing. I cannot understand the following about the Adobe ecosystem.

I have the following questions on Adobe AIR:

  1. What language do I use for coding my application? (not just defining the looks of UI) Like in Qt I use C++. Is it Actionscript?

  2. Can we say AIR is only for making UI's for apps.

  3. Where is the doc for the utility classes along with AIR? e.g. http://qt-project.org/doc/ for Qt

  4. Qt ships with a huge set of premade widgets that one can use. Does Adobe ship with any such widget set and if so where can i see it as in url?

  5. I understand flex SDK is open source. Can I make commerical apps and ship them ? Does flex SDK ship everything (compiler, utility classes/widgets)

  6. How much does AIR cost in terms of licensing?

  7. Is there something in AIR that is equivalent to QGraphicsView of QT?

Answers


If you needs to access a lot of native libraries, you'll need to stay within your QT environment. Keep in mind that AIR is single-threaded and is run on the Flash Player (something that was originally designed for frame-based animations.) However, depending on the style of application you're building, AIR might suit you just fine.

Beware that AIR can get confusing because there's a few different developer paths to creating AIR applications: 1) using html/javascript and the AIR SDK, 2) using Flash/Actionscript and 3) using Flex SDK and/or Flex builder. The last one is the most capable as far as coming from traditional desktop development background.

Small apps that are Web 2.0 for hooking into web services are good candidates for AIR applications. Things like the IM client Digsby would be great. My favorite AIR app that I've seen thus far is Basamiq Mockups. Other useful apps are TweetDeck. These are good examples of the types of things that are well-suited to solve with AIR.

You should visit the Adobe Showcase and look at some applications: http://www.adobe.com/products/air/showcase/

Also, if you're looking to just get out of the C++ game, I believe QT has some java bindings now...also I remember some python bindings, but never look at those myself.

As far as QGraphicsView, people have done similar things in Flex. I tried Googling right now but couldn't find them initially, but people have taken things like A large image, and then only displayed a current region in the window. Also, in the next version of Flex, they're acutaly building an official ViewPort component: http://opensource.adobe.com/wiki/display/flexsdk/Gumbo+Viewport


Need Your Help

Server returning 503 in program but works when accessed through browser?

c# http webclient webclient-download

I'm trying to make a site-specific video downloader for KissAnime.com in C# that takes a URL and gets all the video page URLs from that and then finds the mp4 link for the video and returns all the...

mms2r automatic downloading of remote images

ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-plugins mms

I am using the awesome MMS2R gem (https://github.com/monde/mms2r) to create an app that processes mms messages sent to an email address, storing the mms media (images, video, audio) locally for my ...

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.