YbSoftwareFactory,是一款使用.NET開發的軟件代碼智能快速生成平台,可方便、快速地生成任意編程語言、任意類型的應用程序代碼。最新的2.0版支持插件式開發,可根據自身需要進行二次開發來生成能完全滿足自身需要的任何代碼。本系列將介紹了如何使用YbSoftwareFactory 2.0開發一套完全滿足自身需求的代碼生成插件的主要步驟和插件組成。
YbSoftwareFactory的一個代碼生成插件主要由壓縮文件、模板文件和一些實現了相應接口的類組成,典型的代碼生成插件的項目目錄結構如下:
一、 壓縮文件
壓縮文件中存儲一個解決方案中無需代碼生成的公共組件、類、資源和圖片等。這些文件可在代碼生成前進行自解壓操作,主要作用是在代碼最終生成后能立即編譯執行。如你沒有這方面的需求可不提供。
二、 模板文件
使用T4模板語法編寫的模板代碼,這是代碼生成的核心,如你對T4語法不熟悉,可Go一下。模板文件可以在后期通過YbSoftwareFactory中的“模板管理”功能對模板內容進行編輯。
三、實現如下類
1)實現一個繼承自“IPlugInGroupRepository”的類,該類用於加載本組插件中的各個子插件。插件組將在YbSoftwareFactory左邊的導航欄出現。
2)至少實現一個或多個繼承自“PlugInRepositoryBase
”的類,該類用於生成源代碼,每個插件可單獨生成一套源碼,生成后的代碼支持“文件直接輸出”和“代碼預覽”兩種模式。例如你可把解決方案、實體層、界面層代碼都單獨做成一個插件,方便后期進行開發,然后插件組會自動加載其所有下屬的插件。
如下圖所示,在點擊導航欄的某個插件組后,將動態在Rabbion控件中顯示該插件組中所有的插件。
3)最后你可根據需要提供相應的圖片資源,這樣可在每個插件組和插件上顯示出個性化圖標哈(如上圖所示)。
就是這么簡單,插件開發完成后把相關文件拷貝到應用程序文件夾下的PlugIn子文件夾中即可,程序啟動后會自動加載相應的導航條和Ribbon工具條。
下一節開始將介紹自定義插件項目中各個類的具體實現Demo。