我正在使用C++產品。它的設計具有相當大的靈活性,並且越來越大。現在我們計劃在一個項目中進行合作,我們希望貢獻一部分產品:一部分作爲源代碼,一部分作爲靜態鏈接庫,一部分根本不作爲。C++中的「Static plugin」系統(通過編譯系統)
我想保留在這兩個項目中使用的每個源文件的一個版本,並避免分支整個事情等等。所以我想知道我需要什麼能夠在內部具有所有文件的「完整產品」並且還能夠提取這些文件的一部分(每隔一段時間)並將該子集作爲工作單元傳遞給其他人。 (我認爲我們可以確保這些文件未在合作項目的改變,我們只會增加的東西在那裏。)
我想我需要
- 鬆散耦合,使部分可以軟件架構在不破壞系統的情況下移除。我認爲術語「靜態」插件在這裏是合適的,因爲我認爲我可以從插件系統學習,但我不需要有動態加載它們的能力,它們可以靜態方式鏈接/構建。我希望這可能會迫使我和我的同事通過添加某種插件來擴展系統,而不是在這裏和那裏插入類,從而引入事物之間的耦合。
- 一個構建系統,支持我通過選擇要構建的插件並通過僅提取我需要的「釋放」新子集來支持我。
是否有任何互聯網資源可能有所幫助。什麼是要搜索的關鍵字?
對於如何處理這個問題你有什麼建議嗎?