Graphical User Interfaces maken mens-machine-interacties eenvoudiger en intuïtiever. Het speelt een cruciale rol nu de wereld verschuift in de richting van digitalisering. Python is een van de meest geliefde talen door ontwikkelaars vanwege het grote aantal bibliotheken en frameworks. In dit artikel zetten we 8 Python GUI frameworks voor 2019 op een rij.
(De lijst staat in alfabetische volgorde)
1| Kivy
Kivy is een open-source Python-bibliotheek voor het snel ontwikkelen van applicaties die gebruikmaken van innovatieve gebruikersinterfaces, zoals multi-touch apps. Dit framework is een cross-platform en draait op Linux, Windows, OS X, Android, iOS, en Raspberry Pi. De grafische motor is gebouwd met behulp van een modem en een snelle grafische pijplijn.
2| Libavg
Libavg is een open-source high-level ontwikkelplatform voor media-centrische applicaties. Het gebruikt Python als scripttaal, is geschreven in supersnelle C++ en gebruikt moderne OpenGL voor de weergave. Dit framework is zeer geschikt voor de ontwikkeling van moderne touch UI’s en ondersteunt alle belangrijke touch driver modellen, inclusief Windows touch, Linux XInput, en TUIO. Libavg heeft een aantal mogelijkheden, zoals ondersteuning voor alle weergave-elementen die moderne grafisch-intensieve applicaties nodig hebben, de layout-engine ondersteunt duizenden weergave-elementen tegelijk op het scherm en een hardware-versnelde video-output en nog veel meer.
3| PyQT
PyQt is een set van Python v2 en v3 bindingen voor het Qt applicatie raamwerk van The Qt Company en draait op alle platformen die door Qt ondersteund worden, inclusief Windows, OS X, Linux, iOS en Android. Dit framework brengt het cross-platform applicatie framework Qt C++ en de cross-platform geïnterpreteerde taal Python samen. Qt is een cross-platform applicatie ontwikkel raamwerk voor desktop, embedded en mobiel. Qt bevat abstracties van netwerk sockets, threads, Unicode, reguliere expressies, SQL databases, SVG, OpenGL, XML, een volledig functionele web browser, een help systeem, een multimedia framework, evenals een rijke collectie van GUI widgets.
4| PySimpleGUI
PySimpleGUI is een GUI framework voor Python dat de Python 3 versie ondersteunt. Het is eenvoudig om aangepaste GUI’s te maken met behulp van dit framework. Momenteel zijn er 4 actief ontwikkelde en onderhouden “ports” van dit framework, tkinter is volledig compleet, Qt gebruikt Pyside2 is in alpha stadium, WxPython is in ontwikkeling en Remi (Web browser support) is ook in ontwikkeling.
5| Pyforms
Pyforms is een cross-environment framework voor het ontwikkelen van GUI applicaties. Het framework biedt een Python laag van desktop formulieren, gebaseerd op PyQt, OpenGL en andere bibliotheken, waardoor applicaties kunnen draaien op Desktop GUI, Web en terminal zonder dat de code aangepast hoeft te worden. Pyforms bevordert modulair software ontwerp en code herbruikbaarheid met minimale inspanning.
6| Tkinter
Tkinter of Tk interface is Python’s de-facto standaard GUI (Graphical User Interface) pakket. Het is een open-source framework en is beschikbaar op platformen als Unix en Windows. Het is een van de eenvoudigste en populairste manieren om een GUI-gebaseerde applicatie in Python te bouwen.
7| Wax
Wax is een Python GUI framework dat bovenop wxPython zit (wxWindows voor Python). Dit framework verwijdert de low-level aspecten van wxPython (wat in feite een directe binding is naar de lelijke C API) en geeft je eenvoudige python objecten om je GUI te maken. Het draait ook op vele platformen (Win32, Linux w/ GTK, en macOS/OSX w/ Carbon).
8| WxPython
WxPython is een open-source cross-platform GUI toolkit voor Python. Het is geïmplementeerd als een set Python uitbreidingsmodules die GUI componenten omhullen van de populaire wxWidgets cross-platform bibliotheek, die is geschreven in C++. Met behulp van dit framework kunnen ontwikkelaars native user interfaces maken voor hun Python applicaties die draaien op Windows, Macs, en Linux of andere Unix-achtige systemen. Omdat de programmeertaal Python is, zijn wxPython programma’s eenvoudig, gemakkelijk te schrijven en gemakkelijk te begrijpen.