The idea is still the same: in an abstracted fashion, you can develop applications, by writing them once and compiling them on different platforms. At the time I used it, I did manage to compile my proof-of-concept on Windows, Linux and OSX, with very little platform-specific lines of code.
The newest release of the SDK is a merger of the former desktop-oriented and the mobile SDK's, meaning that a single SDK allows you to target Windows, OSX and Linux computers, but also a wide range of mobile devices.
http://labs.qt.nokia.com/2011/01/20/qt-sdk-1-1-technology-preview-released/
The released version is a technology preview, which means it is deemed rather complete, but is still undergoing further testing before it is officially called a released product.
My main reasons to go for something like Qt:
- abstract platform-specific (and nasty) things into a logical and consistent API
- networking
- reading/writing files
- User Interface (very important > GUI behaves as "native" as possible, e.g. you get the real OSX menu on Mac, while the same code gives a typical Windows menu running on Windows)
- lots more: OpenGL, utility classes, XML, SQL
- They are working hard on responsive interfaces, supporting multi-touch
- Good use of design patterns: abstraction, model/view framework, graphics framework...
- Mostly C++ but can be used from other languages: java, Python...
- liberate license: free to use
- well documented
If you do, I suggest to buy a good book. I can recommend:
- C++ GUI Programming with Qt4, Second Edition which is a full overview for Qt4 and still quite accurate today.
- Practical Qt (although it is getting dated now; as it was mainly written for Qt3)
I recently bought "Advanced Qt Programming: Creating Great Software with C++ and Qt4", but haven't found the time to read it yet.
And if you are curious, it does not support the iPhone/iPad or Android, but some clever people seem to get away with it anyway: http://www.qt-iphone.com, http://code.google.com/p/android-lighthouse
0 nhận xét:
Đăng nhận xét