#rev 2020-09-02 davidsch = Graphical desktop application programming interfaces = == Desktop toolkits for X11-compatible X-servers (GTK, QT) == For contemporary and fast Linux GUI programming, one usually uses a high-level C/C++ programming toolkit library like [[https://www.qt.io/|QT]] or [[https://www.gtk.org/|GTK]]. For programming languages that come with their own UI toolkits (like Java), one even doesn't have to care about the platform - those languages follow the paradigm "write once, run everywhere". However, in practice you will notice small differences between the platforms, even when the paradigm mentioned should apply. == Classic X11-API GUI programming == The "X Window System" (X11) is window system, which was first developed at MIT in 1984, then it was enhanced by various non-profit organzations like XFree86 and X.Org over the years. On the Debian clients managed by ISG D-ITET, "X.Org" (X server) is the current reference software implementation based the original X11 server. Most programmers nowadays no longer directly write software that is interacting with the X server server directly (for those who are still interested in that, read: [[http://www.rahul.net/kenton/xsites.framed.html|X11 Programming]]).