Minggu, 20 Januari 2013

Video
Text

C++ QT No.1: Mengenal QT Framework untuk Developer C++


Mengenal QT Framework (The Amazing Cross-Platform Framework).

[[---BEGIN UPDATE---]]

Update for QT 5.2
Note: Pada hari ini (Jum’at 21 Feb 2014), tutorial ini diupdate untuk informasi tentang QT 5.2.
Saat tutorial ini diupdate (diupdate lho ya bukan ditulis), saya menggunakan QT 5.2, QT Creator 3, dan Visual Studio 2013. Untuk pengguna yang lain sebetulnya sama saja.

Amazing, pada versi 5.2 ini QT is everywhere, untuk anda programmer anda bisa menggunakan QT untuk semua platform hanya dengan satu kode yang sama, hebat bukan??
Platform yang disupport diantaranya,
•Desktop: Windows, Mac OS X, Linux/X11, Solaris
•Embedded: Embedded Linux (DirectFB, EGLFS, KMS, and Wayland), Windows Embedded (Compact and Standard), Embedded Android, Green Hills Software INTEGRITY, QNX, Wind River VxWorks
•Mobile: Android, iOS, BlackBerry, Sailfish, WinRT*, Tizen*
*Work in progress, technology previews





Pada QT 5.2 terdapat banyak sekali perubahan, penambahan fasilitas, bug fixing dari 5.0 dan 5.1. Ada beberapa module yang ditambahkan diantaranya sebagai berikut:
NEW FEATURES:
Qt Android Extras
Qt Bluetooth
Qt Mac Extras
Qt NFC
Qt Positioning
Qt Windows Extras

SUPPORT NEW PLATFORM:
Android
Full support for camera and recording
Low-latency audio (QAudioInput, QAudioOutput)
Command-line deployment tool
JNI convenience API
OpenSSL support
Informasi lebih lanjut: http://qt-project.org/doc/qt-5/android-support.html

iOS
Media player support
Basic camera support (only viewfinder and image capture)
Low-latency audio (QAudioInput, QAudioOutput)
Informasi lebih lanjut: http://qt-project.org/doc/qt-5/ios-support.html

Qt Creator Updates
Qt Creator 3.0 is released along with Qt 5.2. In Qt Creator 3.0, the following were added:
Initial iOS support
API cleanup
Enhanced Android support
Initial debugging backend for the LLDB Debugger (Mac OS X)

Nah, untuk lebih jelasnya tentang semua ini, silahkan baca – baca di http://qt-project.org/doc/qt-5/qt5-intro.html

[[---END UPDATE---]]

QT Framework,QT (dibaca: cute) merupakan framework application cross platform cocok untuk para C++ programer. Apa sih QT itu?? Kenapa harus menggunakan QT?? Apa itu framework?? Apa kegunaannya untuk programer/developer software??

QT (bacanya: cute) adalah cross platform development program, yang artinya dapat membuat program untuk berbagai platform. QT tersedia untuk versi Windows, Linux dan Machintos.

QT ini merupakan salah satu framework yang dapat mempermudah kita dalam membuat suatu aplikasi dengan pemrograman C++. Pada tutorial-tutorial sebelumnya (kategori C++ native, bukan C++/CLI) kita telah menggunakan framework lain, yaitu wxWidgets. Bila anda menggunakan IDE untuk C++ native, seperti CodeBlocks, anda pun akan menemui pilihan framework yang begitu banyak saat akan membuat ‘new project’ disamping wxWidgets dan QT yang telah kita bahas.

Dengan menggunakan QT kita dapat membuat aplikasi untuk linux, windows, machintos, symbian, maemo/meego, windowsCE, embeded linux dengan sangat mudah.

Untuk framework sendiri merupakan sebuah frame yang akan membantu kita dalam menyelesaikan program aplikasi yang ingin kita buat. Anda pasti sudah kenal dengan PHP Framework Codeigniter kan? Nah, dengan Codeigniter, maka semua plugin, module, dan trik-trik penulisan cepat sudah ada dalam satu paket. Sehingga akan sangat membantu untuk developer. Bayangkan kalo kita tidak menggunakan framework sehingga harus mengetik sendiri kode-kode tersebut per-huruf, kapankah software kita akan siap jadi??

Mari kita kembali ke QT. Anda dapat membuka QT di http://qt-project.org. Anda dapat membaca dan melihat demo serta siapa saja yang menggunakan QT.

QT adalah cross-platform aplication dan UI Framework untuk developer yang menggunakan bahasa C++ atau QML. QML itu adalah bahasa C++ dari QT yang mirip seperti css dan javascript, anda bisa lihat di http://qt.digia.com/Product/qt-quick/.

Nah, kalo QT adalah Framework, lalu apa IDE nya?? Untuk IDE dari QT telah disediakan QT Creator, tetapi anda dapat menggunakan IDE lain seperti CodeBlocks dan VisualStudio. QT Creator merupakan bagian dari Nokia QT SDK (sejak tahun 2008 QT diakuisisi oleh Nokia, http://qt.nokia.com ). Untuk QT Creator kita akan membahas lebih lanjut nanti. QT adalah Framework dibawah lisensi LGPL opensource yang dapat kita gunakan untuk membuat sebuah aplikasi yang gratis maupun aplikasi komersial.

Bila anda membuka website QT, anda akan menemukan 3 hal utama yaitu QT, QT Quick dan QT Creator. Untuk QT dan QT Creator sudah jelas, lalu apa itu ‘QT Quick’?

Saya akan mengambil keterangan tentang QT Quick dari gudanglinux.wordpress.com seperti berikut ini:
“Qt Quick singkatan dari Qt User Interface Creation Kit adalah teknologi antarmuka tingkat atas (high-level user interface technology) yang diklaim secara dramatis memudahkan para pengembang untuk mendisain antarmuka (UI) yang cantik, ‘pixel perfect’ dan ringan disamping ‘touch-enabled’ menggunakan basis pemrograman Qt, tanpa perlu pengetahuan tentang pemrograman C++. Qt Quick diperkenalkan bersama rilis Qt 4.7 bulan Maret lalu dan selanjutnya menjadi bagian dari rilis Qt berikutnya.”

Sangat menarik bukan? Lalu apa kelebihannya?? Saya akan mengkutip kembali dari gudanglinux.wordpress.com berikut kelebihannya:

•Deklaratif yang mudah digunakan dengan bahasa mirip dengan skrip QML (Qt Meta-Object Language);

•Tools didalam Qt Creator IDE termasuk sebuah visual editor yang membantu para pengembang dan disainer menggabungkan elemen-elemen sederhana menjadi sebuah antarmuka animasi;

•Kelebihan lainnya adalah pendekatan pemrograman deklaratif yang membantu pembuatan antarmuka-antarmuka menjadi gampang, hanya dengan memerintahkan apa yang harus dibuat dan tidak harus menuliskan bagaimana cara membuatnya.

Ah, saya ingat tentang ‘The Maestro Team’ salah satu pengurusnya adalah agan Hery Sutrisno, group ini merupakan group dibawah naungan Komunitas Indonesia yang rencananya akan mengembangkan pembelajaran C++ dan QT. Maybe bila anda seorang programer dan developer yang tertarik dapat bergabung dengan ‘The Maestro’ group. Kenapa mereka memilih QT dan C++? Saya akan mengkutip quote dari ‘The Maestro’ doc di sini:
Q: Kenapa saya mengutamakan Qt nokia sebagai framework?
Qt nokia diciptakan dengan menggunakan bahasa pemogramman C++ dengan lisensi OpenSource sebagai defacto Graphical User Interface Library untuk C++. Dilinux seperti yang anda ketahui terdiri dari KDE dan GNOME. KDE diciptakan dengan menggunakan teknologi C++ dan Qt, sedangkan GNOME diciptakan dengan mengimplementasikan C++ dan GTK. Disini kita bisa melihat ada 2 framework besar yang digunakan secara standard dalam pembuatan OpenSource aplikasi diLinux yang aktiv pembangunanya. Apa yang Maestro ingin tekankan disini adalah Maestro tidak mempermasalahkan framework apa yang akan digunakan kedepanya tetapi Maestro menekankan pemahaman dasar framework tersebut dan Maestro memilih Qt sebagai dasar untuk penguasaan. Karena pada akhirnya ianya akan berlandaskan kepada programming language itu sendiri dan jenis dari software yang akan dibangun.

Kembali ke QT, versi QT saat penulis merelease tutorial ini adalah versi QT 5.0, pengen tau kelebihan dari versi terbaru yang release Desember 2012 kemarin ini?? Berikut merupakan ulasannya yang saya ambil dari QTDOCS tepatnya pada link 'What’s new in QT 5'.

QT 5.0 merupakan versi yang direlease akhir 2012, ini adalah versi terbaik dan perbaikan dari versi-versi sebelumnya. Versi ini lebih cepat dari versi sebelumnya sekaligus mendukung paradigm User Interface yang sedang ngetrend saat ini yaitu Touch Screen dan Tablets.

QT 5.0 akan sangat memanjakan penggunanya karena sangat mudah dan flexible dengan dukungan Javascript dan QML yang masih berpedoman pada C++. Untuk Javascript Backend sendiri didukung oleh V8 dan QT Webkit 2 yang akan sangat membantu sekali terutama untuk Web Developer HTML5.

Ada satu kelebihan lain dibandingkan dengan versi sebelumnya, portabilitas cross platform dalam QT 5 jauh lebih simple.

Tutorial pengenalan QT ini akan sangat panjang sekali bila diulas secara lengkap, nah, sebagai gantinya, anda dapat melihat 'what’s new in qt 5' yang akan membahas tentang:
-Amazing Graphics Capability and Performance
-Qt Quick in Qt 5
-WebKit and HTML5
-Multimedia
-Modularized Qt Libraries
-Widgets in Qt 5
-Qt Platform Abstraction
-New Connection Syntax
-Connectivity and Networking
-JSON Support
-User Input

Benar-benar menakjubkan bukan??

Nah, pada tutorial berikutnya kita akan membahas installasi QT, pada IDE (di sini saya menggunakan CodeBlocks , VisualStudio dan QT Creator)

Please share bila tutorial ini cukup berbobot untuk anda!

MediaTutorial mengedepankan tutorial yang berkualitas. Semua penjelasan dipaparkan sedetail mungkin.
Please, bila tutorial ini membantu anda dan cukup berkualitas bagi anda mohon untuk share pada button sharing berikut ini.

Writen by: Okie Eko Wardoyo

Comments