X Window 和GNOME、KDE的区别和联系?
来源: ChinaUnix博客 日期: 2007.01.30 20:46 (共有条评论) 我要评论
Window是Linux下的窗口系统,自诞生以后现在已经成为事实上的
类UNIX操作系统下的图形界面标准。
GNOME和KDE是基于X Windows的经过不同组织进行整合之后的桌面环境
(有人说它们是桌面管理器(wm)是不恰当的,他们比桌面管理器要复杂,GNOME
可以搭配多种桌面管理器, KDE以自己的kwm为主)
可以简单的认为GNOME和KDE是并列关系,他们需要基于XWindow才能运行。
下面简单说明GNOME和KDE的区别:
---- KDE项目是两年前由德国自由程序员发起的,他们采用了挪威Troll
Tech软件公司的Qt图形界面库作为基础开发平台,C++为主要开发语言。KDE的发展非常迅速,1999年KDE
1.1.2发行以后,它就成为Linux界“事实”上的桌面标准。然而,因为KDE使用的Qt库所遵循的软件版权协议QPL并不是真正的自由软件协议,这
在自由软件界引起了很大的非议,例如以纯自由软件构成的Linux发行版Debian就拒绝使用KDE。当然,最终用户并不太关心软件许可问题,对他们来
说易用性和强大的功能是最重要的。因此,KDE还是得到了广泛的应用。
----
为了与KDE相抗衡,世界最大的自由软件组织GNU(即自由软件基金会)发起了GNOME桌面环境项目。GNOME采取了完全松散的自由软件开发模式,整
个项目由一系列独立的软件组成,每个软件都由各自独立的开发组负责。这种松散的开发模式使得GNOME的进展非常缓慢。1999年推出的GNOME
1.0与KDE 1.1.2相比在各个方面都差很多,直到2000年推出GNOME 1.2后才有了很大的进步。然而与即将推出的KDE
2.0相比,GNOME在许多方面还非常不完善,例如没有一个统一的办公套件,没有集文件管理器和网络浏览器等功能于一身的综合文件管理软件,另外
GNOME还缺乏成熟的电子邮件、个人信息助理等实用工具软件。而且与KDE相比GNOME的各个组件的集成度还远远不够,不同组件之间的风格也有很大差
别。不管从哪个方面来看,一切似乎都对KDE有利而对GNOME不利。曾经有一段时间,人们都在担心GNOME会半路夭折。
----
与KDE不同,GNOME采用了符合GPL自由软件协议的GDK、GTK作为其底层开发平台,也就是说GNOME是真正意义上的GPL自由软件,商业公司
无需支付任何费用就可以自由使用它。可以说这是商业公司选择GNOME而不选KDE的首要因素。当然,光有这个理由还不足以服人,要想成为名副其实的桌面
环境标准,在技术上也必须有过硬表现才行。
---- GNOME在GTK的基础上扩充了许多额外的功能,开发了一系列GNOME程序通用的函数库和程序,因此具有统一的界面风格和使用习惯。
----
为了实现各个软件之间甚至基于网络的组件复用,GNOME采用了通用的CORBA组件模型,而KDE虽然前期也采用了CORBA技术,但后来由于速度和复
杂性等原因,逐渐转而采用了自己独有的KPart组件模型。这使得KDE在与其他软件的兼容性方面大打折扣。GNOME由于坚持使用CORBA,使得它在
这方面具有相当大的优势。为了更好地使用CORBA模型,GNOME在ORBit(一套轻量级的CORBA实现)基础上开发了Bonobo组件层,不仅简
化了编程工作,而且实现了灵活的组件复用。GNOME甚至能够通过网络使用其他平台下的CORBA组件。这一点真正体现了GNOME名称的精髓所在。
---- 在国际化方面,由于GNOME软件在开发过程中完全遵循i18n国际化协议,所以它可以轻松支持国际上大多数语言,其中当然包括中文(见附图)。而KDE 1.1.2虽然支持国际化,但所使用的Qt 1.4.4却不支持,这使得KDE对远东文字支持很差。
---- 为了弥补GNOME没有重量级软件的缺陷,许多自由软件公司都已经加入了到GNOME的开发行列中,为其贡献代码,开发软件。
---- 虽然GNOME最初是为Linux开发的,但是它具有极其优秀的跨平台能力。目前GNOME至少可以支持Linux、Solaris等大主流Unix操作系统,相信不久的将来GNOME就能够支持包括Windows在内的所有常用系统平台。