手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

qt和gtk+的優缺點

2017-05-27 06:22:46 13000

在嵌入式 Linux 下有很多圖形界面系統 GUI,包括 Qt/Embedded,FLTK,Microwindows 和 GTK+ 等。作為一個開發者,到底使用什么樣的 GUI 系統呢?對一個系統,將它改造為符合你的需求,你要做多少修改呢?修改后的系統的尺寸一般會有多大呢?這些都是開發人員會遇到的問題。我們在這里討論的就 是要對這些內容做一個具體細致的分析,通過我們的討論,大家會對基于 GTK+ 和 X 的 GUI 在嵌入式Linux 下的應用有一個確切的了解。

正文

在嵌入式系統應用日益發展的今天,越來越多的應用都需要使用到 GUI 來進行開發,以此來獲得更好的交互性。

嵌入式 Linux 下 GUI 的選擇,對大多數開發人員來說是一個需要權衡對比的過程。選擇 GTK+ 運行在 X 系統上,然后 X 系統運行在嵌入系統的 framebuffer 上,這會是一個很好的選擇。

一.

GTK+ 與 X 的優點

當然,GTK+ 與 X 一般都是被大家考慮為體積較大的桌面系統的好搭配,但實際上對于嵌入系統來說,它也有著諸多的優點:

1、 X-window 系統與 GTK+ 都非常穩定可靠,X-window 系統是經歷了長期的開發及應用實踐的,GTK+ 也是一個比較成熟的開放源代碼項目;

2、 X-window 系統是一個靈活的 client/server 的模型結構,一個應用客戶端的崩潰不會影響到圖形系統的其他部分,這是一個很重要的特性,它有利于支持第三方應用的擴展開發,而不影響到主體部分;

3、 GTK+有兩個重要的庫:GDK和GLIB。GDK抽象了底層的窗口管理,要移植 GTK+ 到另一個不同的窗口系統的話,我們只需要移植 GDK 就可以了。GLIB 是一個工具集合,它包括了數據類型,各種宏定義,類型轉化,字符串處理,任何應用程序都可以鏈接這個 GLIB 庫,使用其中的各種數據類型、方法,來避免重復代碼,或者說避免開發人員重新發明輪子,這樣有利于減少整個系統的尺寸;

4、 對 GTK+/X 的裁剪是很容易的,它們有著很好的可配置的選項,有著清晰的代碼結構,可以保證安全正確地去掉大段的不需要的代碼;

5、 GTK+ 有著大量的應用,GTK+ 已經被用在了很多重要的應用系統中;

6、 GTK+ 的授權是 LGPL 方式的,X 是 non-copyleft free license 的,第三方開發的系統都能與它們進行鏈接;

7、 GTK+/X 二者都是基于 C 代碼的,而不是C++;

8、 GTK+ 使用 C 來實現了面向對象的架構;

二.

QT優點:

1、跨X11, Win32, Mac三個平臺并且是二進制原生代碼的(比java和.net程序快得多)(源代碼級移植)

2、有個十分好使用的工程管理工具qmake((相比較wxWidget, Gtk+等而言,非常地方便開發)

3、在常用的X11, Win32平臺既有開源版,又有商業版,供不同的用途使用。又有公司的商業支持,開發正規。有KDE(包括KOffice, KDevelop等)這樣典型的的成功運用的項目,使人放心。隨著Qt 4.0開源版的發布,KDE向Windows的移植已經確定,由此,KDevelop, KOffice等一大批KDE下面的軟件也就能移植過去, 有了KDevelop,KWrite等,Windows下Qt的應用將很快多起來,也更加方便開發,我在期待著KDevelop移植到Windows,以解決Windows下的用QT開發的IDE問題。

4、有方便的嵌入式圖形界面開發方面的解決方案

[轉載]


提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: