Ini adalah pengenalan PySide –sebelum seri tutorialnya insyaallah–, pada seri tutorial ini ditargetkan untuk bisa memperkenalkan kita dengan dunia PySide, dan kita siap untuk mengerjakan ‘real project’ setelah mendapatkan pondasi-pondasinya.
Apa itu PySide?
PySide adalah library Python yang memungkinkan kita untuk membangun aplikasi GUI dengan memanfaatkan Qt Framework (Framework Desktop GUI yang ditulis dengan bahasa C++). Jadi, dengan PySide, kita bisa membuat aplikasi berbasis Qt dengan menggunakan bahasa Python, bukan bahasa C++.
Halaman dokumentasi resmi PySide bisa dibuka di http://qt-project.org/wiki/PySide. Dan proses instalasinya pun bisa dilihat di https://pypi.python.org/pypi/PySide. Insyaallah saya akan menuliskan tutorial instalasinya di distro Arch dan Ubuntu 17.04 pada seri tutorial ini.
PySide pertama kali dirilis oleh Nokia pada tahun 2009 dibawah lisensi LGPL. Sebagai bentukan awal Qt toolkit setelah Nokia gagal untuk melakukan kerjasama dengan developer PyQt, Riverbank Computing.
Seperti yang sudah disinggung, PySide membolehkan developer untuk menulis program GUI satu kali saja. Lantas dengan framework Qt yang cross-platform, aplikasi bisa dikompile untuk dijalankan di atas berbagai sistem operasi. Tentu saja mengembangkan Qt-based-application dengan PySide jauh lebih mudah karena bahasa yang kita gunakan adalah Python, bahasa pemrograman yang dinamis, modern, dan komunitasnya besar.
Meskipun pada awalnya project ini telah disponsori dan di bawah inisiatif dari Nokia, sekarang PySide benar-benar menjadi project yang open source. Bahkan pada saat ini, kebanyakan fitur-fitur dan maintenance project dilakukan oleh volunteer dari seluruh dunia.
Apa itu Qt?
Qt adalah framework pengembangan aplikasi cross-platform untuk desktop, mobile, dan embedded device. Platform yang didukung termasuk Windows, Linux, OSX, Android, Blackberry, dan lain-lain.
Secara mandiri Qt bukanlah bahasa pemrograman, ia lebih kepada framework yang ditulis dengan bahasa C++. Sebuah prepocessor, MOC (Meta-Object-Compiler) yang digunakan untuk melebarkan kemampuan C++ dengan fitur tambahan seperti signal dan slots.
Referensi:
http://zetcode.com/gui/pysidetutorial/introduction/
https://wiki.qt.io/About_Qt