構建自己的C C 外掛程式開發框架(三) 總體結構

2022-04-03 06:47:27 字數 730 閱讀 6539

這幾天為了設計外掛程式開發框架,嘗試用了一下發散思維來思考問題。中間看過依賴注入,aop(面向方面程式設計),以及契約式設計等。雖然有些工具無法直接使用,但是這些思想還是可以借鑑的,比如依賴注入,契約式設計。至於aop,和工具相關性較大,雖然思想不錯,但是無法直接在c++中使用。

我設計的外掛程式間的依賴不是通過介面實現的,而是通過外掛程式間的資料(信元流)。而信元流的檢測可以使用契約來檢查。

外掛程式開發框架的總體結構

微核心

1、 負責外掛程式的載入,檢測,初始化。

2、 負責服務的註冊。

3、 負責服務的呼叫。

4、 服務的管理。

擴充套件層:

1、 日誌的列印。

2、 訊息(信元流)的解釋,將二進位制格式解釋為文字。便於定位。

3、 訊息和日誌的追蹤。

分布式處理層:

1、 用於和其他的框架通訊。

2、 和其他的框架搭配,形成乙個分布式的系統。

自動化測試框架層:

1、 整合 cppunit 。

2、 自動化整合測試框架。

3、 自動化功能測試框架。

和第三方框架整合層:

1 、和 第三方框架 整合層。

構建自己的C C 外掛程式開發框架(三) 總體結構

這幾天為了設計外掛程式開發框架,嘗試用了一下發散思維來思考問題。中間看過依賴注入,aop 面向方面程式設計 以及契約式設計等。雖然有些工具無法直接使用,但是這些思想還是可以借鑑的,比如依賴注入,契約式設計。至於aop,和工具相關性較大,雖然思想不錯,但是無法直接在c 中使用。我設計的外掛程式間的依賴...

為什麼要開發自己的框架 平台或外掛程式

從零開始製作任何框架都是一項讓人望而生畏的工作,特別是一些框架已經執行好多年了。在如今這個拿來主義的文化背景下,存在著許多同質化的優秀產品,那我們為什麼還要開發自己的框架 平台或外掛程式?我個人認為主要3個原因。1 深刻理解問題空間 當我們編寫自己的工具的時候,我們別無選擇,必須使自己完全沉浸在問題...

為什麼要開發自己的框架 平台或外掛程式

從零開始製作任何框架都是一項讓人望而生畏的工作,特別是一些框架已經執行好多年了。在如今這個拿來主義的文化背景下,存在著許多同質化的優秀產品,那我們為什麼還要開發自己的框架 平台或外掛程式?我個人認為主要3個原因。1 深刻理解問題空間 當我們編寫自己的工具的時候,我們別無選擇,必須使自己完全沉浸在問題...