[其他] GNome KDE / GTK GTK+ Qt / GDK / Glib

GTK, GTK+, and Qt are GUI toolkits. These are libraries that developers use to design graphical interfaces, all running on top of the X Server or Wayland. These are things that you need to install as dependencies. They're the Linux "equivalent" to Windows' GDI/GDI+. When an application uses any of these, it will usually have a general "look and feel".

GNOME and KDE are Desktop Environments. GNOME primarily uses the GTK+ toolkit, while KDE primarily uses the Qt toolkit. There are applications designed for GNOME or KDE, such as a settings menu or a default music player, usually in the appropriate toolkit. These Desktop Environments have a set of utilities/window managers/design specification to create a more unified desktop. You can mix the two if you feel like it, but you may run into issues with colliding standards and applications (which is a bit more common on systems like Arch).

Unity uses many of the GNOME utilities and backends (Nautilus, Rhythmbox, gvfs, etc.), so Unity is more GNOME than KDE.

One A GNOME program uses multiple libraries to form a hierarchy:

The Gnome library is at the top level, including help routines, classes, and special widgets, and provides an infrastructure for your application.

The second layer is GTK, which is part of the GTK + library. This library provides a basic toolkit and widget to create GUI applications. Most GUIs are written directly with GTK. GTK also provides a powerful object system for the GNOME library.

The next layer is GDK, which is simply packaged with the X function library, which is only used when we make special drawings or set the special properties of the window.

The bottom layer is glib, a utility library for C, which includes portability and some utility functions, as well as some container classes, such as lists, variable groups, variable-length strings, hashes (seemingly Hassi), caching, an event loop, and other useful constructs

小结:

  • GLib 是基础对象库,不涉及任何图形绘制。
  • GDK 是图形绘制库,如果想定制化widget,则再此层实现。不太需要关心。
  • GTK GTK+ 和 Qt 都是 GUI 库,同级别。设备事件管理和窗口管理都在在这一层。
  • GNome 和 KDE 是对 GUI 库的二次封装。

一般开发触及到 GNome 和 GTK/GTK+ 即可。

相关推荐
丽景头牌油墨印花材料4 天前
效率革命:丽景印刷材料有限公司发布晒版机全流程优化方案,引领网印行业生产力跃升
其他
成都云希多肽生产厂家Gloria4 天前
十肽-12/Lumixyl 一款抑制黑色素形成,淡斑亮肤的化妆品原料
其他
JiNan.YouQuan.Soft5 天前
Windows下编译OpenSCAD
其他
老陈头聊SEO6 天前
生成引擎优化(GEO)在增强内容创建效能和流量转化中的应用分析
其他·搜索引擎·seo优化
老陈头聊SEO6 天前
从零起步打造SEO优化技巧,助力网站流量稳步提升
其他·搜索引擎·seo优化
老陈头聊SEO7 天前
深度解析长尾关键词与SEO优化提升效果的有效策略
其他·搜索引擎·seo优化
是做服装的同学8 天前
服装软件ERP系统的基本概念是什么?主要构成有哪些?
大数据·经验分享·其他
kk的matlab学习之路8 天前
深入解析Calico:云原生网络的安全守护者
网络·其他·安全·云原生
破晓之翼8 天前
金蝶EAS OpenAPI 开发说明文档
java·经验分享·其他
老陈头聊SEO9 天前
生成引擎优化(GEO)在提升内容创作效率与用户体验方面的创新策略分析
其他·搜索引擎·seo优化