久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久

Rss & SiteMap

曙海教育集團(tuán)論壇 http://www.bjzhda.cn

曙海教育集團(tuán)論壇
共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]
[瀏覽完整版]

標(biāo)題:Linux開(kāi)發(fā)GUI應(yīng)用程序概述

1樓
wangxinxin 發(fā)表于:2010-11-23 10:14:39
Linux歷史簡(jiǎn)介
1991年,芬蘭大學(xué)生Linus Torvalds編寫(xiě)了一個(gè)小的操作系統(tǒng)內(nèi)核,這就是Linux的前身,Linus Torvalds也由此成為了Linux之父。Linus Torvalds將Linux系統(tǒng)的源代碼在Internet上公布,使Linux的發(fā)展受到了眾多計(jì)算機(jī)高手的鼎力相助,Linux從而不斷地增加新的 特性,不斷地提高穩(wěn)定性。現(xiàn)在,Linux已經(jīng)成為一個(gè)非常流行的操作系統(tǒng)。
Linux是遵從GPL協(xié)議。也就是說(shuō),只要遵從GPL協(xié)議,就可以免費(fèi)得到它的軟件和源代碼,并對(duì)它進(jìn)行自由地修改。但對(duì)一般用戶(hù)來(lái)說(shuō),對(duì)Linux的源代碼進(jìn)行編譯和安裝是難度很高的工作。
所以,一些公司介入Linux的業(yè)務(wù),它們將Linux操作系統(tǒng)及一些重要的應(yīng)用程序打包,并提供較方便的安裝界面。這些公司所提供的產(chǎn)品一般稱(chēng)為L(zhǎng)inux的發(fā)布版本。
目前比較著名的Linux發(fā)布版本有以下幾種:
RedHat—最著名的Linux服務(wù)提供商。
SlackWare—?dú)v史比較悠久的發(fā)行版本。
SUSE—在歐洲知名度較大。
TurboLinux—在亞洲用戶(hù)較多。該公司漢化做得很出色。
Debain—完全由Linux社區(qū)的計(jì)算機(jī)高手維護(hù)的發(fā)布版本。
XteamLinux—北京沖浪平臺(tái)公司推出中國(guó)第一套漢化發(fā)布版本。
BluePoint—內(nèi)核漢化技術(shù)比較引人注目。
紅旗Linux—中科院軟件所和北大方正推出的發(fā)布版本。

Linux的優(yōu)點(diǎn)
Linux有眾多的優(yōu)點(diǎn),下面列出主要的幾個(gè):
* Linux是一個(gè)多任務(wù)、多線(xiàn)程、多用戶(hù)的操作系統(tǒng)。
* Linux性能穩(wěn)定,功能強(qiáng)大,可以與商用操作系統(tǒng)相提并論。
* Linux可以適應(yīng)很多的平臺(tái)。它可以在Intel公司的x86計(jì)算機(jī)及其兼容機(jī)、Alpha計(jì)算機(jī),以及蘋(píng)果等計(jì)算機(jī)上運(yùn)行。 Linux還可以在許多嵌入式設(shè)備上運(yùn)行。
* Linux之上的應(yīng)用程序正在逐漸增多。大多數(shù)為UNIX開(kāi)發(fā)的應(yīng)用程序都能在Linux上運(yùn)行。
Linux還可以在仿真軟件的幫助下運(yùn)行許多DOS應(yīng)用程序和Windows應(yīng)用程序。
* 公開(kāi)源代碼是Linux最大的優(yōu)越性,只要遵從GPL協(xié)議,就可以自由地對(duì)Linux進(jìn)行修改和剪裁,以適應(yīng)個(gè)人需要。

Linux的桌面環(huán)境
Linux有一套簡(jiǎn)便易學(xué)的圖形用戶(hù)接口(GUI),用戶(hù)使用鼠標(biāo)就可以完成大多數(shù)工作。在Linux中,GUI由窗口系統(tǒng),窗口管理器,工具包和風(fēng)格 等幾個(gè)部分組成。窗口系統(tǒng)用于組織顯示屏上的圖形輸出,窗口管理器用于對(duì)窗口的操作如最小化等,工具包是用于編程界面的庫(kù),風(fēng)格是應(yīng)用程序的用戶(hù)界面。
現(xiàn)在,Linux下的桌面環(huán)境主要包括KDE和Gnome兩種。
KDE(K Desktop Environment)桌面環(huán)境目的是提供一個(gè)開(kāi)放源代碼的圖形用戶(hù)接口和開(kāi)發(fā)環(huán)境。
KDE一度成為許多Linux發(fā)布版本的首選桌面環(huán)境。但是,KDE是基于QT庫(kù)的。Qt最初并不遵從GPL協(xié)議。所以,將KDE建立在QT之上是一件危險(xiǎn)的事,它將依賴(lài)于開(kāi)發(fā)QT庫(kù)的公司。
所以,后來(lái)的Linux發(fā)行版本中加入了Gnome主面環(huán)境。Gnome是GNU Network Object Model Environment(GNU,網(wǎng)絡(luò)對(duì)象模型環(huán)境)的縮寫(xiě)。Gnome的發(fā)展很快,已成為一個(gè)強(qiáng)勁的GUI應(yīng)用程序開(kāi)發(fā)框架,可以在任何一種UNIX系 統(tǒng)下運(yùn)行。
Gnome使用的圖形庫(kù)是Gtk+構(gòu)件庫(kù),它是基于LGPL協(xié)議的。Gnome的界面與KDE的界面類(lèi)似,熟悉KDE的用戶(hù)無(wú)需學(xué)習(xí)就能夠使用Gnome。所以,Gnome現(xiàn)在已經(jīng)成為大多數(shù)Linux發(fā)布版本的首選桌面環(huán)境。
Gnome是一個(gè)集成桌面環(huán)境,也是一個(gè)應(yīng)用程序開(kāi)發(fā)框架,由很多的函數(shù)庫(kù)組成。即使用戶(hù)不運(yùn)行Gnome桌面環(huán)境,用Gnome編寫(xiě)的應(yīng)用程序也可運(yùn) 行,但是這些應(yīng)用程序是可以很好地和Gnome桌面環(huán)境集成的。Gnome的開(kāi)發(fā)結(jié)構(gòu)使我們可以開(kāi)發(fā)一致和易用的應(yīng)用程序。

開(kāi)發(fā)所使用的庫(kù)
Gtk+(GIMP ToolKit,GIMP工具包) Gtk+最初用于開(kāi)發(fā)GIMP,是一個(gè)用于創(chuàng)造圖形用戶(hù)接口的圖形庫(kù)。Gtk+是基于LGPL授權(quán)的,因此可以用Gtk+開(kāi)發(fā)開(kāi)放源碼軟件的自由軟件或商業(yè)的非自由的軟件。
Gtk+是在Gdk(GIMP Drawing Kit,GIMP繪圖包)的基礎(chǔ)上創(chuàng)建的。Gdk是對(duì)Xlib函數(shù)的包裝。我們一般用GTK代表軟件包和共享庫(kù),用Gtk+代表GTK的圖形構(gòu)件集。
Gtk+圖形庫(kù)使用一些稱(chēng)為“構(gòu)件”的對(duì)象來(lái)創(chuàng)建GUI應(yīng)用程序。它提供了窗口、按鈕、框架、列表框、組合框、樹(shù)、狀態(tài)條等很多構(gòu)件,可以構(gòu)造豐富的用戶(hù)界面。
在Gtk+圖形庫(kù)構(gòu)件基礎(chǔ)上,又開(kāi)發(fā)了一些新構(gòu)件,這些構(gòu)件都是Gtk+構(gòu)件庫(kù)的補(bǔ)充,它們提供了許多Gtk+構(gòu)件沒(méi)有的功能。一般把這些構(gòu)件稱(chēng)為Gnome構(gòu)件。使用Gnome構(gòu)件可以使開(kāi)發(fā)界面一致的應(yīng)用程序變得更加容易。
Gnome的應(yīng)用程序開(kāi)發(fā)結(jié)構(gòu)核心是一套庫(kù),是由C語(yǔ)言編寫(xiě)的,對(duì)很多語(yǔ)言都提供了GnomeAPI接口,包括Ada、Scheme、Python、Perl、Tom、Eiffel、Dylan等。
Gnome的開(kāi)發(fā)架構(gòu)包含以下一些內(nèi)容:

1. 非Gnome庫(kù)
Gnome繼承了自由軟件一些函數(shù)庫(kù)。其中一些庫(kù)Gnome應(yīng)用程序開(kāi)發(fā)架構(gòu)的一部分,但是不屬于Gnome庫(kù)。可以在Gnome環(huán)境中使用這些庫(kù)函數(shù)。主要有以下幾種:
Glib庫(kù) —Glib是Gnome的基礎(chǔ),它是一個(gè)C工具庫(kù),提供了創(chuàng)建和操作常用數(shù)據(jù)結(jié)構(gòu)的實(shí)用函數(shù)。
Gtk+庫(kù)—Gtk+(GIMPToolkit的縮寫(xiě)),是在Gnome應(yīng)用程序中使用的GUI工具包。Gnome在基本Gtk+構(gòu)件集合的基礎(chǔ)上添加了許多其他構(gòu)件。
ORBit庫(kù)—ORBit是一個(gè)用C開(kāi)發(fā)的CORBA2.2ORB。和其他ORB相比,它短小精悍,但速度更快,同時(shí)還支持C語(yǔ)言映射。ORBit是以一整套庫(kù)函數(shù)的方式實(shí)現(xiàn)的。
Imlib庫(kù) Imlib(圖片庫(kù))提供一些例程,其中包括加載、存儲(chǔ)、顯示,以及定繪制各種流行的圖像格式(包括GIF、JPEG、PNG以及TIFF)的函數(shù)。

2. Gnome庫(kù)
Libgnome庫(kù)—Libgnome是一些與圖形用戶(hù)接口無(wú)關(guān)的函數(shù)集合,Gnome應(yīng)用程序可以調(diào)用其中的函數(shù)。
Libgnomeui庫(kù)—Libgnomeui包含了與GUI相關(guān)的Gnome代碼。它由為增強(qiáng)和擴(kuò)展Gtk+功能而設(shè)計(jì)的構(gòu)件組成。libgnomeui主要包含:
(1)GnomeApp構(gòu)件一般用來(lái)為應(yīng)用程序創(chuàng)建主窗口。
(2)GnomeCanvas構(gòu)件用來(lái)編寫(xiě)定制構(gòu)件。
(3)Gnome內(nèi)置的pixmap用于創(chuàng)建和使用對(duì)話(huà)框的例程。
Libgnomeui中還有幾種其他構(gòu)件,如GnomeEntry、GnomeFilePicker等。
Libgnorba庫(kù)—libgnorba提供與CORBA相關(guān)的實(shí)用程序。

3.其他庫(kù)
這些庫(kù)一般使用在Gnome應(yīng)用程序中,但它不屬于Gnome-libs:
Gnome-print庫(kù)—Gnome-print提供一個(gè)虛擬輸出設(shè)備,一段代碼能輸出到一個(gè)打印預(yù)覽構(gòu)件或PostScript文件,還可以輸出到其他打印機(jī)格式。
Gnome-xml庫(kù)—Gnome-xml能按照樹(shù)狀結(jié)構(gòu)分析XML,也能按照XML輸出樹(shù)狀結(jié)構(gòu)。
Guile庫(kù) Guile是Scheme編程語(yǔ)言在一個(gè)庫(kù)中的實(shí)現(xiàn),它使任何應(yīng)用程序都能帶有一個(gè)嵌入式的Sheme解釋器。
Bonobo庫(kù)—Bonobo是一種對(duì)象嵌入式結(jié)構(gòu),類(lèi)似于Microsoft的OLE。

編程語(yǔ)言和編程工具
在Linux下的常用開(kāi)發(fā)語(yǔ)言是C語(yǔ)言,Linux上的很多應(yīng)用程序就是用C語(yǔ)言寫(xiě)的。當(dāng)然,也可以使用其他語(yǔ)言。因?yàn)镚tk+和Gnome是用C語(yǔ)言編寫(xiě)的,所以在開(kāi)發(fā)Linux下的GUI程序時(shí)使用C語(yǔ)言是非常方便的。Gtk+也提供與許多其他語(yǔ)言的接口。
一般的Linux發(fā)布版本中都提供了C編譯器gcc或egcs。使用gcc或egcs可以編譯C和C++源代碼。各種C編譯器都要使用一些C語(yǔ)言實(shí)用函 數(shù)。為了保證程序的可移植性,gcc沒(méi)有使用通用的C函數(shù)庫(kù),而是使用一種稱(chēng)為glib的函數(shù)庫(kù)。glib也是Gtk+的基礎(chǔ)。它包含一些標(biāo)準(zhǔn)函數(shù)的替代 函數(shù)和基本數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)。
還有許多使用工具可以提高Linux下的編程效率,如gdb是優(yōu)秀的C語(yǔ)言調(diào)試器,有非常豐富的調(diào)試指令。automake和autoconf用于由源代碼結(jié)構(gòu)配置編譯選項(xiàng),生成編譯所需的Makefile文件。
在Linux下開(kāi)發(fā)GUI應(yīng)用程序,像Windows平臺(tái)上的可視化快速應(yīng)用程序開(kāi)發(fā)工具還很少。有幾種正在開(kāi)發(fā)的RAD(Rapid Application Development)工具,比如我們以后將要介紹的Glade—一種GUI生成器,可以快速生成創(chuàng)建界面的C源程序
共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]

Copyright © 2000 - 2009 曙海教育集團(tuán)
Powered By 曙海教育集團(tuán) Version 2.2
Processed in .01563 s, 2 queries.
主站蜘蛛池模板: 亚洲福利精品一区二区三区 | 日韩一区二区三区免费视频 | 亚洲第一区精品日韩在线播放 | 性高湖久久久久久久久aaaaa | 久久99亚洲精品久久久久网站 | 亚洲精品xxx| 狠狠色狠狠色综合久久一 | 伊人狼人综合 | 自拍 欧美| 日本亚欧乱色视频在线网站 | 亚洲一区二区三区首页 | 亚洲aa| 国产免费高清 | 国产日产韩产麻豆1区 | 天天躁天天碰天天看 | 久久福利资源网站免费看 | 欧美大片一区二区三区 | 在线成人天天鲁夜啪视频 | 男人性天堂 | 日本阿v视频在线观看高清 日本波多野结衣视频 | 在线播放人成午夜免费视频 | 国产精品观看 | 久久精品在线免费观看 | 三级手机在线观看 | 国产欧美一区二区精品性色 | 免费又黄又爽又猛大片午夜 | 国产色视频在线观看免费 | 欧美日韩国产58香蕉在线视频 | 日韩性大片免费 | 日日撸夜夜操 | 国产免费久久精品99 | 丁香狠狠色婷婷久久综合 | 欧美成人精品 | 国产视频精品久久 | 欧美手机手机在线视频一区 | 九九视频免费观看 | 老鸭窝 国产 精品 91 | 精品国产高清a毛片 | 91亚洲精品久久91综合 | 91香蕉成人免费网站 | 性欧美巨大的视频 |