Dalam pemrograman Python, langkah-langkah untuk memulai pemrograman GUI tidak terlalu rumit, tetapi memang mengharuskan pengguna untuk mulai membuat beberapa perencanaan. Karena sifatnya sebagai bahasa pemrograman tujuan umum dengan interpreter yang tersedia di setiap sistem operasi umum, Kita akan dihadapkan pada pilihan tool yang akan digunakan untuk membuat antarmuka pengguna (GUI).
Untungnya, ada banyak opsi yang tersedia bagi programmer yang ingin mempermudah pengguna untuk berinteraksi dengan program mereka. Ada beberapa framework UI untuk berbagai platform, termasuk untuk native Linux, Windows, dan Mac, dan banyak pula yang bekerja di ketiganya sekaligus.
Berikut adalah beberapa framework open source untuk memulai pemrograman Python berbasis GUI.
1. PyQt, PySide, dan Qt untuk Python
PyQt mengimplementasikan pustaka Qt yang populer, dan jika Anda terbiasa dengan pengembangan Qt dalam bahasa lain, apakah itu pengembangan aplikasi native untuk KDE atau lingkungan desktop berbasis Qt lainnya, Anda mungkin sudah terbiasa dengan Qt. Hal ini akan membuka kemungkinan mengembangkan aplikasi menggunakan Python yang memiliki tampilan dan feel native di banyak platform, sambil mengambil keuntungan dari tool dan pengetahuan komunitas Qt yang besar.
Qt sudah mapan di komunitas developer. Menulis aplikasi Python menggunakan Qt berarti Anda memiliki akses ke QtCreator, yang menampilkan mode desainer untuk menghasilkan kode untuk tata letak aplikasi.
PyQt memiliki dua lisensi di bawah lisensi komersial dan GPL, tidak seperti proyek Qt itu sendiri, dan perusahaan utama yang mendukung PyQt menawarkan FAQ lisensi untuk membantu Anda memahami apa arti dan maksud dari lisensi tersebut bagi aplikasi Anda.
Untuk opsi lain untuk menggunakan pustaka Qt dengan Python, Anda bisa juga pertimbangkan Qt For Python (umumnya dikenal sebagai PySide2), tersedia di bawah LPGL.
2. Tkinter
Jika ada satu paket yang mungkin disebut toolkit GUI "standar" untuk Python, maka itu bisa berarti Tkinter. Tkinter adalah wrapper di sekitar Tcl / Tk, antarmuka grafis populer yang pertama kali dipopulerkan di awal tahun 90-an. Keuntungan memilih Tkinter adalah banyaknya sumber daya, termasuk buku dan contoh kode, serta komunitas besar pengguna yang mungkin dapat membantu Anda jika Anda memiliki kesulitan. Contoh kode juga mudah untuk dipelajari dan cukup mudah dimengerti dibaca manusia.
Tkinter tersedia di bawah lisensi Python, di atas lisensi BSD Tcl / Tk
3. WxPython
WxPython menawarkan pustaka GUI lintas-platform wxWidgets yang aslinya C++ ke Python. WxPython terlihat sedikit lebih native daripada Tkinter di berbagai sistem operasi karena menggunakan widget host sistem untuk membangun GUI. Cukup mudah juga untuk dipelajari, dan memiliki komunitas pengembang yang besar. Anda mungkin perlu membundel wxPython dengan aplikasi Anda, atau meminta pengguna untuk menginstalnya sendiri, karena framework GUI ini tidak diinstal secara otomatis dengan Python.
WxPython menggunakan Lisensi Perpustakaan wxWindows dari proyek induknya, yang disetujui oleh OSI.
4. Python GTK+ 3
Sebelumnya dikenal sebagai PyGTK, proyek Python GTK+ 3 menyediakan binding Python ke objek GTK (windows, widget, dan sebagainya). GTK+ paling terkenal digunakan sebagai dasar untuk desktop GNOME, tetapi tersedia untuk aplikasi yang berdiri sendiri di Linux, Windows, dan Mac.
Saat Anda menggunakan Python GTK+ 3, Anda bisa menggunakan banyak tool pengembangan yang sama yang dibuat untuk GTK+ itu sendiri. Termasuk diantaranya Glade, sebuah perancang antarmuka untuk aplikasi GTK+. Antarmuka yang dirancang dalam Glade disimpan sebagai XML dan digunakan oleh objek GtkBuilder dalam kode aplikasi Anda. Perancangan anta muka menggunakan drag and drop, membuatnya mudah untuk membuat UI yang dinamis dan responsif.
5. Kivy
Kivy adalah toolkit untuk Linux (termasuk Raspberry Pi), Windows, Mac, dan Android. Proyek ini berfokus pada "antarmuka pengguna yang inovatif", dan telah digunakan untuk aplikasi multimedia, seperti aplikasi pengontrol musik untuk ponsel hingga aplikasi whiteboarding yang memenuhi seluruh dinding ruang rapat.
Kivy tidak memiliki program tata letak visual seperti QtCreator dan Glade, tetapi ia menggunakan bahasa desainnya sendiri untuk membantu Anda mengasosiasikan tata letak UI dengan objek kode. Hal ini memudahkan Anda untuk mengelompokkan class dan function dalam aplikasi Anda. Kivy juga meng-host Kivy Garden, repositori dari widget dan add-on yang dibuat pengguna, jadi jika Anda berpikir untuk menciptakan sesuatu yang tidak disediakan oleh Kivy, cobalah untuk mencarinya di Garden.
Daftar di atas bukan satu-satunya pilihan yang tersedia untuk Anda. Untuk opsi lainnya, lihat halaman "GUI programming in Python" di wiki resmi Python Software Foundation, yang berisi daftar tool-tool yang lain.
EmoticonEmoticon