Comparison of platforms #3
WillPittenger
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
There are a variety of computer languages we could use, some of which have multiple options for how to implement a GUI. These are listed below with the advantages and disadvantages of each. In the list, if a GUI platform is listed as "lightweight", that means the platform doesn't require native OS controls to be made for anything other than top-level windows. Otherwise, each window has its own control on the OS level.
Advantages and Disadvantages of Various Computer Languages
Language
Advantages
Disadvantages
GUI Platforms Supported
At least one developer in the organization has coded with this
C++
WxWidgets
WPF
Windows Forms
Qt
GTK
✓*
*Experience is out of date
C♯
WPF
Windows Forms
Qt (via QtSharp)
GTK (via GTK#)
WxWidgets (via Wx.NET)
✓
Java
Swing
wxWidgets (via wx4j)
✓
Perl
WxWidgets (via wxPerl)
Prima
Qt (via either Perl/Qt or Perl/KDE)
GTK (via gtk2-perl)
✓
Advantages and Disadvantages of Various GUI Platforms
GUI Platform
Bindings Available
Advantages
Disadvantages
At least one developer in the organization has developed for this
GTK
C++, C♯ (requires GTK#), Perl (requires gtk-perl)
🚫
Qt
C++, C♯ (requires QtSharp), Perl (requires either Perl/Qt or Perl/KDE)
🚫
Windows Presentation Framework (WPF)
C++.NET (requires a MS compiler), C♯
✓
Windows Forms
C++.NET (requires a MS compiler), C♯
✓
Swing
Java
✓
wxWidgets
C++, C# (via Wx.NET), Perl (via wxPerl), Java (via wx4j)
🚫
Prima
Perl
In the list above, a “lightweight” component doesn’t rely on the OS to provide or paint controls other than the top-level windows. Things like buttons are handled entirely by the GUI platform. In a “heavyweight platform”, the OS knows about all controls. Lightweight systems use fewer resources, but aren’t as good at mimicking the look the OS is using for itself. In general, a lightweight system is better overall. Hence, in the list above, those got bonus points.
Those are the main ones I know of. If you want to add to this list or have other comments, please reply.
Beta Was this translation helpful? Give feedback.
All reactions