Qt5 9 C 專案開發架構理論

2021-08-27 03:28:19 字數 1000 閱讀 8470

最近博主單獨負責乙個比較大的專案,發現以前那種所有ui介面和功能邏輯全部寫在一起的用法很混亂,不利於團隊開發和產品迭代。於是,博主最終開始接觸架構了,開始知道ui介面和業務邏輯需要盡可能的分離。

判斷乙個結構的解耦程度,乙個簡單的辦法是離開了ui介面,業務邏輯是否可以正常呼叫和執行,如果可以,說明這個架構是比較成功的。同時,對ui介面和業務邏輯功能的每個模組,是否能夠被替換,而不影響整個專案的功能,這點也是判斷架構解耦性的乙個指標。

博主的專案主要是用c/c++語言進行開發,用的介面庫是qt5.9.4,下面是博主對c++架構的初步認知和理解。

1.1架構有很多,但是用在c/c++後端整合管理專案上的架構,常用的是mvc,這也是主流的架構。所以博主重點學習和參考的也是mvc架構。下面是mvc架構的知識點講解。

初級理解)

深入理解)

的mvc詳解,重點參考)

的mvc(mvd))

1.2思考總結

ui介面層(view)——>控制器層:當使用者操作ui介面時,發射乙個控制器層訊號;

控制器層(controller)——>模型層:控制層呼叫模型層功能函式,實現對應業務邏輯功能;

模型層(model)——>控制器層:模型功能層,完成業務邏輯後,再發射乙個控制器層訊號,宣告完成了該業務邏輯功能。

控制器層(controller)——>ui介面層:控制器層接收到該支線程完成了對應的業務邏輯,開啟槽函式結束該支線程,然後發射乙個控制器層完成業務邏輯訊號到ui介面層。ui介面層收到訊號,顯示對應的結果ui介面。

注意:整個過程控制器有三個關鍵訊號,啟動業務邏輯功能訊號,退出該業務邏輯執行緒訊號,完成業務邏輯訊號。而model層功能函式是用支線程來執行。也就是說,所有的模型功能函式都是用支線程完成,這樣可以保證ui介面的流暢度。

初級理解)

深入理解)

的mvc詳解,重點參考)

的mvc(mvd))

Qt 之 pro 子專案開發

新建乙個工程,選擇 其他專案 選擇 子目錄專案 命名,建立乙個只有pro檔案作為目錄根節點的檔案。根pro檔案中的 template subdirs subdirs testtools mymenu abform 第二級pro中的 template subdirs subdirs afrom bfo...

Qt 之 pro 子專案開發

新建乙個工程,選擇 其他專案 選擇 子目錄專案 命名,建立乙個只有pro檔案作為目錄根節點的檔案。根pro檔案中的 template subdirs subdirs testtools mymenu abform 第二級pro中的 template subdirs subdirs afrom bfo...

c 專案開發記錄

1 log4net 2 entityframework 3 資料庫工具 sqlitesudio 資料型別選擇 system.data.sqlite 即可加密連線 4.介面 控制項透明屬性 backcolor system.drawing.color.fromargb 30,255,0,0 30透明度...