There are many libraries to program a graphical user interface for software. Portability, speed of execution, speed and cost of development, stability and the license of your software will depend on your choice of graphics library.
Here are few examples of each type of library mentioned.
Native API
Some systems implement their interface within the operating system, this applies to Windows in which the graph is nested within the core of the OS.
- Windows graphical API
As previously mentioned, the Windows graphical interface is not implemented at the user level but at the kernel level, which has the advantage of obtaining rapid execution interfaces.
However, the direct use of Windows API also has many disadvantages:
- This API lack of abstraction, management of the GUI is using rather low level functions. To develop a GUI with this API take longer and might hide some bugs. However, a library whose approach is low-level might allow for more options at graphical level.
- This API is not portable. Your software may not be used outside of Windows, unless you use an emulation program.
You can use this API in C or C + + using MFC and indeed in many other languages.
Note that the programming of graphical interfaces using the Windows API is often more comfortable using IDE like Microsoft Visual C ++.
- XWindow
You can use XWindows to develop graphical interfaces but again you expose yourself to a library that lack of abstraction and require more time for development. However you will get portable software. XWindow also exists in Windows.
Another important point, some implementations are free XWindow (XFree, Xorg).
Bookmarks