ZT QT網路程式設計

zhengnx發表於2011-10-14
在這個章節當中需要對Qt 概念一個整體的瞭解, 首先我們將從Qt 的歷史開始,以及現在的應用狀況。Qt 的版本使用許可權, 與怎樣學習好Qt 的程式設計,Qt 是基於C++ 物件導向的開發包,這些物件的組織我們稱之為物件的模型,物件模型組成了開發程式的單位,事實上 Qt 設計程式物件導向的最小單位是widget(部件), 在第一章以及以後的章節當中將會把部件的功能展示出來。
Qt 開發建立在不同的平臺上, 這是Qt 開發的一個巨大的有點, 在不同的平臺上安裝需要注意的問題, 第一章節當中也指明出來, 在最後一個小節中需要測試一個小程式, 用來測試當前的安裝環境是否已經成功。




在這個章節中主要從功能上給Qt 做出模組的分類, 這些模組功能的實現主要集中在dll動態連線庫上。 但是具體的實現方法是需要使用從QObject類繼承下來的功能類, 它們根據不同的功能,提供了組成應用程式不同的組類。所謂組類就是完成特定功能和功能相似的類的組合。透過這一章節的具體學習, 將會對Qt 當中所要使用到的類有一個大致的瞭解, 這些類涉及到了從後臺程式設計到高階多媒體,文字處理,網路功能實現,時鐘與日期,軟體美工,使用指令碼引擎,以及現代作業系統多執行緒程式設計類。 為後面章節的說明與例子打下基礎, 這一章節中的類的說明可作為Qt 程式編寫的手冊進行查詢, 裡面介紹了Qt 使用類的詳細方法,列舉出來了大部分常用的訊號與槽,成員函式, 常量與宏。


Qt 檔案相關的操作, 繼承了從C 語言而來的方法, 包含了開啟一個檔案,讀取一個檔案,寫入一個檔案, 兵新增了非同步讀寫操作的方法。
在Qt 當中增加了一個新的功能, 監視目錄和檔案的改變。 這個類的作用是在當檔案的訪問或者檔案內容與目錄內容發生改變的時候,提供了監視的方法。
Qt 講儲存的的檔案轉化成為流格式這包含了二進位制的資料流與文字流,它們透過應用QDataStream 類與QTextStream 類來完成。
最後讀檔案讀寫以及對部件操作的同時需要注意編碼的使用。



在桌面應用中我們將會看到, 怎樣使用Qt 的佈局類來調整視窗部件的佈局, 以及在視窗部件當中的每個部件獲得鍵盤焦點的順序和方法。
選單與工具來是在視窗中不可缺少的一部分, 他提供給使用者方便的動作事件的出發, 工具欄提供了視覺化的工具使用方法, 每個工具欄的圖示是使用圖示管理的方法來完成的。
視窗接受外來的事件並處理事件, 在這一章節當中會接觸到事件的處理過程, 並設定事件的過濾, 最後我們將使用Qt 的設計器來完成一個視窗的設計。


軟體在工作的過程當中需要向使用者提供錯誤資訊,與狀態資訊, 所以需要有專門的互動部件來完成這些操作。 Qt 為我們提供了大量的互動部件的使用
它們包含了報告錯誤資訊部件, 液晶數字顯示部件, 與單行的文字編輯部件, 與顯示富文字編輯服務問的QTextEdit 部件, 並提供了進度與狀態資訊的部件, 透過最後的例項對以前的部件使用方法做一個鞏固的學習


Qt 被設計用來設計圖形程式, 基於圖形設計的首先要對圖形座標有一個大概的瞭解, 圖形座標與傳統數學座標的區別, 怎樣轉化螢幕視窗座標到傳統的數學座標模式。
對座標系統有所瞭解後我們將深入到繪畫系統當中, 圖形的檢視框架,列印系統的使用。


隨著網際網路的發展, 對現代的編譯工具需要更好的支援, Qt 當中包含了底層與高層的類來支援網路程式設計, 在底層包含了基於套機子的帶連線與無連線的程式設計類,還包含了基於安全套接字的連線方法。
Qt 的最大特色提供了基於網路層協議類的支援, 包含了 HTTP 協議與FTP 協議型別, 同事還對網路程式設計的報頭操作提供了良好的支援。
透過簡單的類, 使用靜態的函式, 就可以順利的得到網路上的系統資訊, QUrl 類提供了統一資源定位的功能。
在例項中我們將給大家展示了FTP HTTP 與廣播的傳送方法。


資料庫在處理多種資料與複雜資料的提供了巨大的方便, 資料逐漸的脫離了軟體而成為單獨的系統, 這樣做的好處, 有利於管理。
Qt 提供了對資料庫的優秀的支援介面, 從三個層次, 使用者介面層,SQL應用程式設計介面層, 驅動程式層來提供了資料庫的介面方法。
在這一章節當中我們還要透過資料庫的常用的操作, 來講解Qt 是怎樣支援資料庫的操作的。不僅如此, Qt 還提供了良好的資料瀏覽模型, 相關資料庫的類來讀取資料庫的資料。
在最後例子當中我們側重於使用資料庫怎樣在實際當中利用的方法。



現代的作業系統都支援多程式的方法, 使用多程式可以可以做到資源的最大化使用, Qt 為程式編寫提供了非常出色的執行緒的支援, 執行緒是真正使用程式動作的主體。



Qt作為一個圖形化的軟體設計工具, 不但提供了強大的部件類的支援, 而且提供了大量的工具的支援。 這保證了圖形設計的美觀性, 與簡單性。 並且在不修改大量程式碼的情況下做到移植到各種平臺之上。
Qt 設計器提供了,編輯模式, 訊號與槽模式, 提供了可操作的部件的屬性, 提供了強大資源系統的支援。
Qt 設計手冊提供了強大的搜尋方式, 使得程式設計師在開發程式的過程中迅速的找到需要的內容, 較少程式設計師在編寫程式的複雜程度。
Qt 為國際化提供了翻譯工具, 同時也為Qt 程式設計的本地化提供優秀高能工具的支援。
qmake 工具適用於不同平臺上的程式編寫方法, 提供了大量的命令列來編譯工程,形成可執行的軟體工具, qmake 還提供了不同體系不同硬體軟體平臺的支援。
uic 編譯器是江Qt 設計器設計的圖形使用者介面。
Qt 還提供了強大資源的支援, 在執行應用程式的同時,資源系統會把應用程式中使用到的資源編譯成為二進位制的資源與應用程式一起執行。
qtconfig 提供了在X11 平臺上在不重新編譯應用程式的過程中來修改指定的部件。


Qt 程式設計的最大有點是可以實現移植, 他可以順利的移植到嵌入式作業系統當中, Qtopia Core 是Qt 在嵌入式作業系統上的實現方法。
Qtopia Core 在實現嵌入式作業系統, 需要有自己的體系架構, 它包含了具體的應用部件與通訊模式。
Qtopia Core 還提供了主流的螢幕驅動, 用來管理顯示的方法。
Qtopia Core 提供了VNC 協議用來實現網路上不同應用程式之間的通訊
Qtopia Core 提供了幀緩衝的模式, 用來減少在嵌入式作業系統有關圖形執行所使用的資源。
Qtopia Core 提供了交叉比哪一的方法, 提供了裁剪Qtopia Core的最佳化工具, 並優秀的移植到了其他的作業系統上。
Qtopia 保留了設計Qt外掛的介面用來設計擴充套件的Qtopia Core 外掛。
在工業圖形設計上Qtopia 還提供了OpenGL 的支援, 這與Qt 所提供的支援不相同, Qtopia 採取了一系列的措施來保證 OpenGL 執行的同時減少資源的使用
在本章的最後我們將透過幾個例項程式, 來研究Qtopia 應用程式的設計方法。




[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7868752/viewspace-1055672/,如需轉載,請註明出處,否則將追究法律責任。

相關文章