一、基礎開發框架維護——問題總結
可能遇到的問題如下:
基礎框架更新後,其他使用方 無法及時更新。比如基礎框架改了幾個bug,使用方很可能無法及時更新。
當使用方的基礎開發框架版本,大幅落後於最新版本之後,可能很難更新到最新版本(改動很大,相容性也需要測試)。
當有很多應用使用的很舊版本的開發框架時,開發框架要考慮到老版本的相容性,會影響到開發框架的架構和重構。
如果基礎開發框架是基於開源框架二次開發的,需要經常和開源框架保持同步更新公升級,否則會落後於開源版本、錯過很多重要更新。
二、基礎開發框架開發——相關經驗和解決方案
1、定原則,公司內的開源框架,需要遵循下列設計原則:
開源框架要制定版本發布計畫,每個版本要有詳細的更新內容和公升級手冊等,對老版本的相容性要經過嚴格的測試和驗證,每次版本要建分支,發布時要打tag,修改的**,都要按修改內容提commit注釋,如果是bug修復,要給出bug的出處和描述,每次發布新版本,要列出這個版本內所有的commit內容、方便使用者查閱。
盡量保證向前相容,如果有不相容處,一定要特別說明,包括原因和公升級方法。
盡量保證平滑公升級,舊版本的使用者,能以最簡單的方式完成公升級(比較改個版本號就完成公升級)。
每次發布,都要通知到各個使用方;如果是重要的bug修復、希望使用方盡快公升級,應該發出重要公升級通知,務必聯絡各個使用方,和領導溝通,明確公升級的截止時間。
列出基礎框架的所有使用方,及其使用的版本,隨時掌握使用者的情況,如果發現某個使用方版本嚴重 落後於最新版本,則提醒公升級。
基於開源框架的二次開發,需要合併開源作者的更新內容,在發布文件中,也需要詳細說明更新內容以及列出每個commit。
2、完善配套設施和制度
要維護好 使用文件、開發者文件、發布和公升級文件,而且這些文件,要能體現版本和修改記錄。
需要各個部門或團隊的領導支援,必要時能發起重要通知,敦促各個使用方公升級。
使用好 **和issue 平台,大家可以提交bug\enhancement\feature\question,在上面反饋問題、貢獻**。
完善基礎框架自身的測試流程,建議每次發布版本,附帶乙個測試報告,報告中列出測試用例和測試覆蓋率等指標。
三、開源及持續性
總結起來,兩句話:
1、公司政策引導,源源不斷有人使用
2、有歸屬,且源源不斷有多人參與開發和維護
此兩者配合,才能形成良性迴圈,如果領導者和發起人,無法做到這兩點,建議及早放棄。
關於框架開發
紀念 jar library installation jar檔案複製的目錄 2種方式區別 1.add checked libraries to project build path 把build path中引入的包指向myeclipse中lib的位置,就是把myeclipse中你需要的lib作為外...
框架開發1
config.inc.php配置檔案 cfg array cfg host localhost cfg user root cfg password 111111 conf.class.php讀取配置檔案的資訊,封裝類 單例類 class conf final protected function ...
Karrigell Web框架開發簡介
karrigell 是乙個語法簡潔直觀的 python web 框架。它支援任何一種資料庫,orm或者模板引擎,也可以讓開發人員選擇不同的編碼方式。karrigell 包自帶乙個功能強大的 web伺服器和乙個用 python 寫成的資料庫引擎 pydblite 在自帶的 demo 程式中使用到了這個...