MAME成為街機模擬器霸主的原因(2)




3、良好的項目管理和社區支持。



MAME的項目管理系統,從一開始的由老大NicolaSalmoria獨力經營,到現在由五位開發者大佬團體牽頭合作協同開發,經歷了很多變遷。




MAME一直是一個鬆散的組織,由一些MAME DEV(MAME開發人員)組成一個組織,向MAME提交代碼,並交由老大整理髮布。


MAME的發布系統是極為嚴謹的。最近,MAME官網透漏了一些有關新版本發布的細節:


從MAME 0.179開始,在每個發布版本之前會有三天的凍結期。在每月最後一個星期日,MAME正式發布日來臨之前三天,管理團隊就開始鞏固代碼和準備發布新版本。在凍結期開始之後,只有重要的修復補丁可以被集成入預發布版。新版本的基本功能被在Windows, Linux和Mac等廣泛的作業系統上測試。在凍結期開始之後到發布日,ROM/系統一般便不再更新。只有一個例外情況,就是最近被增加到可以運行狀態的系統,如果有任何錯誤修正,可以被集成入預發布版。凍結期給MAME測試員鞏固目標的時間,使發布造成的問題可以被最小化。




在技術層面上,一旦凍結期開始,MAME管理者就將創建一個從主幹代碼分出來的分支代碼,稱為release0nnn。nnn的具體數值就是將要發布的MAME的版本號。修補代碼將被推送和集成入該分支代碼中,而不是主幹代碼。主幹代碼的開發正常進行。任何不屬於該發布版本的代碼,將被集成入以後將要發布的版本,在發布日當天,最終發布版代碼被標記後,被重新集成入主幹代碼。然後分支代碼被刪除。發布代碼被標記為mame0nnn這樣的表格。從凍結期到發布期之間的這段時間,分支代碼將被公布在MAME位於github網站的軟體倉庫中。在MAME新版本發布後,該分支代碼包括的所有修改版本將被集成回主幹代碼。所以沒有修補信息會丟失,而且關聯到個人開發者的委託也會在MAME新版發布後繼續保持有效。MAME管理者也和MAME測試員合作,在凍結期開始後,增加一個新版到以後被發布的代碼版本。


顯然,這種管理系統是極為嚴謹而有效的。



MAME從誕生之日不久,就擁有了龐大的粉絲團體和良好的社區支持。我記得在我1998年在北京大學南門飛宇網吧以25元/小時的天價上網的時候,MAME的官方粉絲網站:MAMEWorld就已經開始運營了。MAMEWorld網站的開始運行時間已經不可考證,然而它確實是一個不折不扣的MAME粉絲大本營。MAMEWorld為廣大MAME改版作者提供空間,讓他們可以發布新改版。為MAME周邊文件作者提供空間,使他們可以保存、發布MAME周邊文檔。為MAME前端製作者提供空間,讓他們可以發布新的MAME前端。只要和MAME沾邊的重要網站,就可以被MAMEWorld收錄或添加友情連結。MAMEWorld網站還負責發布MAME相關新聞、更新消息和發布投票等活動。


此外,必須提及MAME論壇社區。在這裡,MAME的開發者和粉絲們可以展開開誠布公的交流,交流使用情況,也可以插科打諢、增進友誼。還有一個重要的網站,即是MAME Testers。顧名思義這個網站是專門用來提交關於MAME的bug情況,便於MAME開發者匯總分析,留言交流,並指派單獨的開發者去修復bug的地方。這兩個網站或論壇,是了解MAME情況不可或缺的重要地點。



MAME論壇



MAME Testers


MAME建立的這些支持網站系統,極大方便了初學者的學習進程,和開發者的開發工作。也為MAME君臨街機模擬器世界做好了鋪墊。

留言

這個網誌中的熱門文章

TeknoParrot 模擬器介紹,俗稱《鸚鵡模擬器》

[轉貼] ASP.NET傳遞參數給Crystal Report做Export或Print的動作

[轉貼] Server 端Post資料到 .ashx