自從 2016 年開發 ArOZ Online 系統之後就不斷有人跟我說這系統的價值和用途,當然這也是各有各的說法,從商業管理系統,多媒體創作平台,個人醫療管理到網絡硬碟等都有人提出過。
當然,這對我來說是很榮幸的事情,畢竟這麼多人提出這麼多個用途,即是說這系統已經具有多周途的特點,可以隨個人需要而更改上面安裝的模塊以配合自己的需求。
現有的 ArOZ Online 版本
自這篇文章開始寫的今天開始計算,之前發佈的版本主要有以下幾個:
版本號 | 代號 | 發佈類型 |
< dev-1.1.4 | Aloplex | 內部測試版 |
< dev-1.2.8 | Sempervivum Tectorum | 內部測試版 |
1.0 | aCloud | 穩定版 |
1.1 | aCloud – Oryza Sativa | 內部測試版 |
1.2 | aCloud – Bombax Ceiba | 內部測試版 |
所以,如果要開源的話有兩個方向是可行的
使用獨立發行版本開源
使用獨立版本發行,即是說之後的 ArOZ Online 會分為兩個版本:
1. ArOZ Online LTS (Long Term Support)
2. Open ArOZ Online
這裡的好處就是我們可以透過 Long Term Support 的版本確保資金來源,再者確保開發進度和方向,然而不好的部分當然就是要分開兩個版本發行,由於系統組建不一樣,就結論來說組建的時候也會有很多問題,而且由 Open Source Community 提出的更改也很難直接進到主要的源碼庫,最後導致難以創造一個新的開源社群。
使用模組化方式開源
使用模組化開源的方式就比較特別,而且也應該比較少 Open Source Project 會使用這做法,畢竟這很容易導致版本不兼容的問題,但是我還是在這裡說一下這種開源方式的原理
這種設計比較像 RedHat 之類的商業用 Linux 方案,然而要維護一點都不容易,再者,要實現這種開源的模組化設計還需要以下幾個系統功能:
- 模組安裝器(使用 Git 倉庫的 URL 來安裝)
- 自動更新模組,用作更新 Open ArOZ Online 的基層架構
- 開源模組的安裝需求及版本控制器(有點像 npm 的東西?)
所以,就現在的開發進度來說這種開源方式還是未能實現的。
結論
就開原模式來說的確使用模組化開源方案是比較合適的。然而,這會需要加入新的系統架構來作支援。看來在整個開源生態圈成熟之前還是只能用第一種方案:分成兩個組建的方式來開源會比較方便和符合成本效益了。