程序开发中版本管理之命名规则及格式
轉自:http://blog.chinaunix.net/uid-22670933-id-3264155.html
?
前言:
?? 從網上找到的有關軟件發布時候,如何命名的相關規則。雖然你可以對自己發布的軟件隨便起名,但尊循一定規則,還是非常有交流。
?
第一篇文章:
1 版本類型
1.1 正式版本
Enhance:增強版或者加強版 屬于正式版
Full version:完全版 屬于正式版
Release:發行版,有時間限制
Upgrade:升級版
Retail:零售版
Plus:增強版,不過這種大部分是在程序界面及多媒體功能上增強。
1.2 測試版本
Alphal:內部測試版
Beta:外部測試版
M 版: Milestone,意思是每個開發階段的終結點的里程碑版本
Trail:試用版(含有某些限制,如時間、功能,注冊后也有可能變為正式版)
RC版:Release Candidate,意思是發布倒計時,該版本已經完成全部功能并清除大部分的BUG。到了這個階段只會除BUG,不會對軟件做任何大的更改。
RTM版:Release To Manufactur,意思是發布到生產商,這基本就是最終的版本
GA版:Generally Available, 最終版
1.3 產品版本
Shareware:共享版
Free:自由版
Cardware:屬共享軟件的一種,只要給作者回復一封電郵或明信片即可。(有的作者并由此提供注冊碼等),目前這種形式已不多見。
Demo:演示版
Preview:預覽版
Corporation & Enterprise:企業版
Standard:標準版
Mini:迷你版(精簡版),只有最基本的功能
Premium:貴價版
Professional:專業版
Express:特別版
Deluxe:豪華版
Regged:已注冊版
1.4 語言分類
CN:簡體中文版
CHT:繁體中文版
EN:英文版
Multilanguage:多語言版
1.5 其他分類
Rip:是指從原版文件(一般是指光盤或光盤鏡像文件)直接將有用的內容(核心內容)分離出來,剔除無用的文檔,例如PDF說明文件啊,視頻演示啊之類的東西,也可以算做是精簡版吧…但主要內容功能是一點也不能缺少的!另:DVDrip是指將視頻和音頻直接從DVD光盤里以文件方式分離出來。
OEM版:Original Equipment Manufacturer,意思是提供給電腦生產廠的版本
FPP版:Full Packaged Product (FPP)–Retail,就是零售版(盒裝軟件),這種產品的光盤的卷標都帶有“FPP“字樣
VLO版:Volume Licensing for Organizations ,團體批量許可證(大量采購授權合約),這是為團體購買而制定的一種優惠方式。
這種版本根據購買數量等又細分為以下5種版本:
開放式許可證--Open License
選擇式許可證--Select License
企業協議--Enterprise Agreement
企業訂閱協議--Enterprise Subscription Agreement
學術教育許可證--Academic Volume Licensing
2 版本編號
2.1 編號句法x.y.z
X:主版本號,用來表示提供給客戶的產品功能的主要增強。在一個極端的例子中,主版本號的上升用來說明產品現在已經擁有了一個全新的功能類。從市場和許可權的角度來看,主版本號的升級相當于購買一個完全獨立的產品。從開發者角度來看,一個主版本號的迭代差不多總是反映了一個新的獨立分支或是其主干還可以延續主版本的生命期。
Y:特征版本號,用來表示產品新增了一些特征,或者是在原來文檔中描述的特征上作了重要的修改。用來確定特征版本號什么時候需要修改的一個衡量標準就是產品功能說明書。產品的特征版本升級是在主版本之間保持產品競爭力的一種重要機制。
Z:缺陷修復版本號,用來表示在該版本上所做的缺陷維護行為的等級。版修復版本是穩定市場和最小化客戶技術支持費用負擔的一種重要機制。
2.2 支持α和β發布的編號句法x.y.z[A|B]
A:表示是α版本
B:表示是β版本
|:表示邏輯運算符“或”
[]:表示內部的元素是可選擇的
說明:最后一個α或β發布之后,給正式客戶發布版本來一個進位,以使其在“z”的位置出現一個0。如:正式客戶發布2.2.6用版本號2.3.0來代替。
3 軟件發布規則舉例
3.1 簡要描述
用于文件目錄,壓縮包等。
ProjectName-x.y.bYYYYMMDD[.n]?? (每日構建)
ProjectName-x.y.Mn??? (里程碑)
ProjectName-x.y.Betan??? (測試發布)
ProjectName-x.y.RCn??? (穩定化發布)
ProjectName-x.y.RTX[.Rn]?? (正式發布,或帶更新包的正式發布)
3.2 詳細描述
用于軟件內部描述,如:“關于軟件”。
ProjectName [V/版本]x.y.bn.un.[Mn/Betan/RCn/RTX[.Rn]].bYYYYMMDD[.n]
其文檔版本發行規則:
DocumentName-Vx.y[.Rn]??? (發布,或帶修訂的發布)
簡要描述舉例:
xoWidgets的發布:
xoWidgets-1.0.b20080101
xoWidgets-1.0.b20080101.2??? (當天第二次發布)
...
xoWidgets-1.0.M1??? (里程碑版本1)
xoWidgets-1.0.b20080601
xoWidgets-1.0.b20080601.2??? (當天第二次發布)
...
xoWidgets-1.0.M2??? (里程碑版本2)
...
xoWidgets-1.0.Beta1??? (測試版本1)
xoWidgets-1.0.Beta2??? (測試版本2)
...
xoWidgets-1.0.RC1??? (預發布版本1)
xoWidgets-1.0.RC2??? (預發布版本2)
...
xoWidgets-1.0.RTX??? (交互的正式版本)
xoWidgets-1.0.RTX.R1??? (交互的正式版本,帶R1更新)
xoWidgets-1.0.RTX.R2??? (交互的正式版本,帶R2更新)
...
詳細描述舉例:
xoWidgets V1.0.2480.512.RTX.R2.b20081201
注:
(1) x - major,主要版本號
(2) y - minor,次要版本號 (偶數為穩定版本,奇數為開發版本)
(3) bn - build number,構建號
(4) un - update number,更新號
(5) YYYYMMDD - 年月日
(6) n - 遞增的整數
?
第二篇文章:
優秀項目—檔案—的命名慣例?
用GNU風格的命名習慣,檔案名加主版本號.輔版本號.補丁編號?
讓檔案名稱符合GNU命名規則是一個禮人利己的事情,GNU的命名規則是:以所有字母都小寫的主名稱作為前綴,后跟一個破折號,再跟一個版本號,擴展說明,以及其他后綴。?
我們舉例說明如下:假定您有一個項目叫做“foobar”,現在她的進展狀況是第一版、第二次發布、第三補丁。如果她只有一個檔案包(可能就是所有的源碼), 那么她的名稱應該是:?
foobar-1.2.3.tar.gz?
源代碼檔案包?
foobar.lsm?
LSM文件(如果您需要將這個項目提交到Metalab上,則需要這個LSM文件)。?
請千萬不要把名字起成下面的樣子:?
foobar123.tar.gz?
(這會讓人誤解為是一個名為“foobar123”的項目)?
foobar1.2.3.tar.gz?
(這會讓人誤解為是一個名為“foobar1”項目的第2.3版)?
foobar-v1.2.3.tar.gz?
(許多處理程序將會把她理解為名為“foobar-v1”的項目)?
foo_bar-1.2.3.tar.gz?
(下劃線讀起來即不上口,也不容易讓別人輸入和記住)?
FooBar-1.2.3.tar.gz?
除非您樂意被看成是市井小人,否則就不要這么寫。因為這種寫法同樣不易讀、輸入和記憶。?
如果您想對源代碼包和二進制包有所區別,或者想區分不同類型的二進制包、由不同編譯選項編譯出來的二進制包,請在文件名的“擴展說明”部分來表示那些信息,擴展說明緊跟在版本號之后。也就是說您可以這樣起名字:?
foobar-1.2.3.src.tar.gz?
(表示源代碼包)?
foobar-1.2.3.bin.tar.gz?
(表示二進制包,但不確定具體類型)?
foobar-1.2.3.bin.ELF.tar.gz?
(表示ELF格式的二進制包)?
foobar-1.2.3.bin.ELF.static.tar.gz?
(表示靜態鏈接庫的ELF格式二進制包)?
foobar-1.2.3.bin.SPARC.tar.gz?
(表示SPACE格式的二進制包)?
千萬不要使用“foobar-ELF-1.2.3.tar.gz”這種格式的名稱,因為處理程序對“-ELF” 這樣的中綴將難以解釋。?
一個好的名稱將按順序包含以下幾項:?
項目名稱前綴?
破折號?
版本號?
點?
“src”或“bin”標記(可選)?
點或者破折號(建議使用點)?
二進制格式和選項(可選)?
歸檔和壓縮后綴?
當兩個不同的項目使用同樣的主名稱時就會產生混淆。他們是Metalab索引文件(http://www.ibiblio.org/pub/Linux?)和Freshmeat附錄(http://www.freshmeat.net?)。另外還有一個好地方是:SourceForge (http://www.sourceforge.net?),在這些地方您可以做一點名稱檢查的工作。?
2.選擇一個好的許可證和版權說明∶理論篇?
開源與版權?
任何非公共的東西幾乎都有版權,有的甚至還有不止一個版權。?
開源軟件領域,則是另一番景象;在這里版權是用來保護許可證的。版權所有者唯一的權利就是確保許可證的落實。?
采用遵照開源定義的許可證?
開源軟件的定義(OSD)是許可證的公共標準。OSD本身并不是一個許可證;而是給出了某個許可證要想成為開源許可證所必須包含的一個最小集合。 OSD和其他輔助資源可以從開源原動力站點獲得。?
如果沒有特別的需要,最好不要自搞一套許可證?
4.好的開發習慣?
使用autoconf/automake/autoheader工具?
如果用C寫程序,記住一定要用autoconf/automake/autoheader工具來處理各種移植性的問題,用這些工具完成系統配置信息的收集,創建makefile文件。現在許多人在打算編譯源碼時只希望通過“configure; make”這樣簡單的命令就可以得到干凈利落的編譯,事實上大家就是這么干的。?
發布前要仔細地檢查代碼?
發布前要仔細地檢查文檔和README等文件?
文檔發布前最好用拼寫檢查工具查一遍。?
5.制作項目發布包的好經驗?
確保tar包解壓時會創建一個獨立的新目錄?
整個項目的簡介?
項目的WWW站點所在的URL(如果有的話)?
指出開發者編譯整個項目所在的系統環境,并指出項目可能潛在的移植性問題?
重要文件和子目錄的結構信息?
編譯/安裝步驟說明,或者指明這些信息所在的文件名(通常是INSTALL文件)?
項目主持人和參與者的名單列表,或者指出這些信息所在的文件(通常是CREDITS文件)?
最近關于本項目的一些進展情況和新聞,或者指出包含此信息的文件(通常是NEWS文件)?
遵照標準文件命名規則?
“勇猛的探索者”要想閱讀README文件,他們就必須首先瀏覽解壓后項目檔案所在的根目錄下的文件名。這些文件名本身就在向讀者傳達著許多信息。如果您遵照標準的命名規則就可以給那些探索者有價值得線索以便他們更好的理解您的意圖。?
這里列出了一些標準文件名稱和他們的涵義。當然并不是所有項目發布時都必須包含所有這些文件。?
README或READ.ME?
整個項目的結構信息說明,第一個需要閱讀的文件。?
INSTALL?
配置、編譯和安裝該項目的說明信息?
CREDITS?
本項目所有貢獻者的列表?
NEWS?
本項目最近的一些新聞和進展狀況?
HISTORY?
本項目的歷史發展演變記錄?
COPYING?
指出本項目采用的許可證條款(通常采用GNU GPL)?
LICENSE?
本項目的許可證條款文件?
MANIFEST?
本項目的所有文件列表?
FAQ?
關于本項目的純文本格式的常見問題解答?
TAGS?
為Emacs或vi準備的tag標記文件?
我們可以看出來,全部大寫的文件名一般表示該文件是給人閱讀的文檔,而不是項目的一個組成部分。?
編撰一個FAQ文件可以幫您很多忙。如果某個問題經常被其他人問起,就把這個問題列入FAQ文件;然后指導用戶在向您發文或提交出錯報告前首先閱讀FAQ文件。一份好的FAQ文件可以給項目維護者減輕好幾個數量級的負擔。?
另外在每次發布時都保留一個HISTORY文件和NEWS文件,并列明時間信息的做法是非常有好處的。在所有其他文件中,這兩個文件可以讓您在遇到一些專利侵權法律問題時有所準備(雖然這種情況至今還沒有發生過,不過最好還是有備無患)。?
為項目升級做好準備?
只要您打算為您的項目發布新版本,項目就必定處在不斷的變化之中。有些變化是不能向前兼容的。因此您必須認真思考安裝程序設計上的問題,就是說讓同一項目的不同版本的代碼安裝后可以共存在一個系統中。這個問題對庫項目的發布尤為重要,因為您不能指望所有基于這個庫的應用程序都會緊跟您的API接口規范的后塵。?
6.好的文檔編寫慣例?
7.好的溝通方式?
建一個與項目相關的網站?
如果您想圍繞項目建立一個用戶、開發者的網上社區的話,最好應該建一個網站。一個標準的項目網站一般包括如下內容:?
項目的特點(為何要有這個項目,誰會對此項目感興趣)。?
下載項目源代碼的地方。?
指明如何加入項目相關的郵件列表。?
一個常見問題解答列表。?
HTML格式的項目文檔。?
與項目相關或競爭的其他項目或網站的鏈接。?
有的項目站點甚至還有指向源碼結構樹的匿名訪問鏈接(便于跟蹤項目進展)。?
8.好的項目管理經驗?
關于基本開發模式的討論和對“早發布常發布”的集市開發模式的論述請參考《大教堂和集市》一文。?
關于心理動機、社群習俗和化解各種沖突的討論請參閱《開拓智域》一文。?
關于開源軟件經濟學基礎和各種商業運作模式的討論請閱讀 《魔法大鍋爐》一文。?
需要指出的是這些文章并非自由軟件開發的終極論斷,不過他們都是經過深思熟慮后的思想結晶,還沒有其他文章超越了他們的深度(文章的作者非常希望未來某一天有人超越他們)。
?
第三篇文章
1.版本號:
V(Version):即版本,通常用數字表示版本號。(如:EVEREST Ultimate v4.20.1188 Beta )
Build:用數字或日期標示版本號的一種方式。(如:VeryCD eMule v0.48a Build 071112)
SP:Service Pack,升級包。(如:Windows XP SP 2/Vista SP 1)
2.授權和功能劃分:
Trial:試用版,通常都有時間限制,有些試用版軟件還在功能上做了一定的限制。可注冊或購買成為正式版
Unregistered:未注冊版,通常沒有時間限制,在功能上相對于正式版做了一定的限制。可注冊或購買成為正式版。
Demo:演示版,僅僅集成了正式版中的幾個功能,不能升級成正式版。
Lite:精簡版。
Full version:完整版,屬于正式版。
3.語言劃分:
SC:Simplified Chinese簡體中文版。
CN : 簡體中文版
GBK:簡體中文漢字內碼擴展規范版。
TC:Traditional Chinese繁體中文版。
CHT : 繁體中文版
BIG5:繁體中文大五碼版。
EN : 英文版
Multilanguage : 多語言版
UTF8:Unicode Transformation Format 8 bit,對現有的中文系統不是好的解決方案。
4.開發階段劃分:
α(Alpha)版:內測版,內部交流或者專業測試人員測試用。Bug較多,普通用戶最好不要安裝。
β(Beta)版:公測版,專業愛好者大規模測試用,存在一些缺陷,該版本也不適合一般用戶安裝。
γ(Gamma)版:相當成熟的測試版,與即將發行的正式版相差無幾。
RC版:Release Candidate。
RC 版。是 Release Candidate 的縮寫,意思是發布倒計時,候選版本,處于Gamma階段,該版本已經完成全部功能并清除大部分的BUG。到了這個階段只會除BUG,不會對軟件做任何大的更改。從Alpha到Beta再到Gamma是改進的先后關系,但RC1、RC2往往是取舍關系。
Final:正式版。
5.其他版本
Enhance :增強版或者加強版 屬于正式版1
Free :自由版
Release :發行版 有時間限制
Upgrade :升級版
Retail :零售版
Cardware :屬共享軟件的一種,只要給作者回復一封電郵或明信片即可。(有的作者并由此提供注冊碼等),目前這種形式已不多見。/ S
Plus :屬增強版,不過這種大部分是在程序界面及多媒體功能上增強。
Preview :預覽版
Corporation & Enterprise :企業版
Standard :標準版
Mini :迷你版也叫精簡版只有最基本的功能
Premium : 貴價版
Professional : 專業版
Express : 特別版
Deluxe : 豪華版
Regged : 已注冊版
Rip :是指從原版文件(一般是指光盤或光盤鏡像文件)直接將有用的內容(核心內容)分離出來,剔除無用的文檔,例如PDF說明文件啊,視頻演示啊之類的東西,也可以算做是精簡版吧…但主要內容功能是一點也不能缺少的!另:DVDrip是指將視頻和音頻直接從DVD光盤里以文件方式分離出來。
RTM 版 :這基本就是最終的版本,英文是 Release To Manufactur,意思是發布到生產商。
Original Equipment Manufacturer (OEM)
You may license products through an Original Equipment Manufacturer (OEM). These products, such as Windows operating systems, come installed when you purchase a new computer.
OEM軟件是給電腦生產廠的版本,無需多說。
Full Packaged Product (FPP)/Retail
Physical, shrink-wrapped boxes of licensed product that can be purchased in a local retail store or any local software retailer.
FPP就是零售版(盒裝軟件),這種產品的光盤的卷標都帶有"FPP"字樣,比如英文WXP Pro的FPP版本的光盤卷標就是WXPFPP_EN,其中WX表示是Windows XP,P是Professional(H是Home),FPP表明是零售版本,EN是表明是英語。獲得途徑除了在商店購買之外,某些MSDN用戶也可以得到。
Volume Licensing for Organizations (VLO)
You may enjoy potentially significant savings by acquiring multiple product licenses. Depending on the size and type of your organization.
團體批量許可證(大量采購授權合約),這是為團體購買而制定的一種優惠方式。這種產品的光盤的卷標都帶有"VOL"字樣,取"Volume"前3個字母,以表明是批量,比如英文WXP Pro的VOL版本的光盤卷標就是WXPVOL_EN,其中WX表示是Windows XP,P是Professional(VOL沒有Home版本),VOL表明是團體批量許可證版本,EN是表明是英語。獲得途徑主要是集團購買,某些MSDN用戶也可以得到。
?
第四篇文章
目前軟件行業主流的版本號管理有3 種方案,搜集并整理如下:
一、命名規則及格式?
1.GNU 方案 :
命名規則:主版本號.子版本號[ .修正版本號 [ 編譯版本號 ]]
英文對照:Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]
示 例:1.1.5, 2.0, 2.1.0 build-1781
2.Windows 方案:
命名規則:主版本號.子版本號[ 修正版本號 [ 編譯版本號 ]]
英文對照:Major_Version_Number.Minor_Version_Number[Revision_Number[.Build_Number]]
示 例:1.15, 2.0
3..Net Framework 方案:
命名規則:主版本號.子版本號[.編譯版本號[.修正版本號]]
英文對照:Major_Version_Number.Minor_Version_Number[.Build_Number[.Revision_Number]]
說 明:版本號由二至四個部分組成:主版本號、次版本號、內部版本號和修訂號。主版本號和次版本號是必選的;內部版本號和修訂號是可選的,但是如果定義了修訂號部分,則內部版本號就是必選的。所有定義的部分都必須是大于或等于 0 的整數。
二、一些約定?
1.Major:具有相同名稱但不同主版本號的程序集不可互換。例如,這適用于對產品的大量重寫,這些重寫使得無法實現向后兼容性。
2.Minor :如果兩個程序集的名稱和主版本號相同,而次版本號不同,這指示顯著增強,但照顧到了向后兼容性。例如,這適用于產品的修正版或完全向后兼容的新版本。
3.Build :內部版本號的不同表示對相同源所作的重新編譯。這適合于更改處理器、平臺或編譯器的情況。
4.Revision :名稱、主版本號和次版本號都相同但修訂號不同的程序集應是完全可互換的。這適用于修復以前發布的程序集中的安全漏洞。
5.程序集的只有內部版本號或修訂號不同的后續版本被認為是先前版本的修補程序 (Hotfix) 更新。
三、版本號管理策略?
1.GNU方案:
項目初版本時,版本號可以為 0.1 或 0.1.0,也可以為 1.0 或 1.0.0, 如果你為人很低調 , 我想你會選擇那個主版本號為 0 的方式;?
當項目在進行了局部修改或 bug 修正時 , 主版本號和子版本號都不變 , 修正版本號加 1;?
當項目在原有的基礎上增加了部分功能時 , 主版本號不變 , 子版本號加 1, 修正版本號復位為 0, 因而可以被忽略掉;?
當項目在進行了重大修改或局部修正累積較多 , 而導致項目整體發生全局變化時 , 主版本號加 1;?
另外 , 編譯版本號一般是編譯器在編譯過程中自動生成的,只定義其格式,并不進行人為控制。?
2.Windows方案:
項目初版時 , 版本號為 1.0 或 1.00;?
當項目在進行了局部修改或 bug 修正時,主版本號和子版本號都不變 , 修正版本號加 1;?
當項目在原有的基礎上增加了部分功能時 , 主版本號不變 , 子版本號加 1, 修正版本號復位為 0, 因而可以被忽略掉;?
當項目在進行了重大修改或局部修正累積較多 , 而導致項目整體發生全局變化時 , 主版本號加 1;?
另外 , 編譯版本號一般是編譯器在編譯過程中自動生成的 , 我們只定義其格式 , 并不進行人為控制。?
四、后綴?
另外,版本號的后面還可加入 Alpha, Beta, Gamma, Current, RC (Release Candidate), Release, Stable 等后綴,后綴的后面還可以加入1 位數字的版本號。對于用戶來說,如果某個軟件的主版本號進行了升級,用戶還想繼續那個軟件,則發行軟件的公司一般要對用戶收取升級費用;而如果子版本號或修正版本號發生了升級,一般來說是免費的。
附:常用的后綴及說明
alpha 內部測試版?
beta 外部測試版?
demo 演示版?
Enhance 增強版或者加強版 屬于正式版?
Free 自由版?
Full version 完全版 屬于正式版?
shareware 共享版?
Release 發行版 有時間限制?
Upgrade 升級版?
Retail 零售版?
Cardware 屬共享軟件的一種,只要給作者回復一封電郵或明信片即可。(有的作者并由此提供注冊碼等),目前這種形式已不多見。?
Plus 屬增強版,不過這種大部分是在程序界面及多媒體功能上增強。?
Preview 預覽版?
Corporation & Enterprise 企業版?
Standard 標準版?
Mini 迷你版也叫精簡版只有最基本的功能?
Premium — 貴價版?
Professional — 專業版?
Express — 特別版?
Deluxe — 豪華版
Regged — 已注冊版?
CN — 簡體中文版?
CHT — 繁體中文版?
EN — 英文版?
Multilanguage — 多語言版?
五、其他?
α版
此版本表示該軟件僅僅是一個初步完成品,通常只在軟件開發者內部交流,也有很少一部分發布給專業測試人員。一般而言,該版本軟件的 bug 較多,普通用戶最好不要安裝。
β(beta)版
該版本相對于α版已有了很大的改進,消除了嚴重的錯誤,但還是存在著一些缺陷,需要經過大規模的發布測試來進一步消除。這一版本通常由軟件公司免費發布,用戶可從相關的站點下載。通過一些專業愛好者的測試,將結果反饋給開發者,開發者們再進行有針對性的修改。該版本也不適合一般用戶安裝。
γ版
該版本已經相當成熟了,與即將發行的正式版相差無幾,如果用戶實在等不及了,盡可以裝上一試。
trial(試用版)
試用版軟件在最近的幾年里頗為流行,主要是得益于互聯網的迅速發展。該版本軟件通常都有時間限制,過期之后用戶如果希望繼續使用,一般得交納一定的費用進行注冊或購買。有些試用版軟件還在功能上做了一定的限制。
unregistered(未注冊版)
未注冊版與試用版極其類似,只是未注冊版通常沒有時間限制,在功能上相對于正式版做了一定的限制,例如絕大多數網絡電話軟件的注冊版和未注冊版,兩者之間在通話質量上有很大差距。還有些雖然在使用上與正式版毫無二致,但是動不動就會彈出一個惱人的消息框來提醒你注冊,如看圖軟件 acdsee 、智能陳橋漢字輸入軟件等。
demo版
也稱為演示版,在非正式版軟件中,該版本的知名度最大。 demo 版僅僅集成了正式版中的幾個功能,頗有點像 unregistered 。不同的是, demo 版一般不能通過升級或注冊的方法變為正式版。
以上是軟件正式版本推出之前的幾個版本,α、β、γ可以稱為測試版,大凡成熟軟件總會有多個測試版,如 windows 98 的β版,前前后后將近有 10 個。這么多的測試版一方面為了最終產品盡可能地滿足用戶的需要,另一方面也盡量減少了軟件中的 bug 。而 trial 、 unregistered 、 demo 有時統稱為演示版,這一類版本的廣告色彩較濃,頗有點先嘗后買的味道,對于普通用戶而言自然是可以免費嘗鮮了。
正式版
不同類型的軟件的正式版本通常也有區別。
release
該版本意味“最終釋放版”,在出了一系列的測試版之后,終歸會有一個正式版本,對于用戶而言,購買該版本的軟件絕對不會錯。該版本有時也稱為標準版。一般情況下, release 不會以單詞形式出現在軟件封面上,取而代之的是符號 (r) ,如 windows nt(r) 4.0 、 ms-dos(r) 6.22 等。
registered
很顯然,該版本是與 unregistered 相對的注冊版。注冊版、 release 和下面所講的 standard 版一樣,都是軟件的正式版本,只是注冊版軟件的前身有很大一部分是從網上下載的。
standard
這是最常見的標準版,不論是什么軟件,標準版一定存在。標準版中包含了該軟件的基本組件及一些常用功能,可以滿足一般用戶的需求。其價格相對高一級版本而言還是“平易近人”的。
deluxe
顧名思義即為“豪華版”。豪華版通常是相對于標準版而言的,主要區別是多了幾項功能,價格當然會高出一大塊,不推薦一般用戶購買。此版本通常是為那些追求“完美”的專業用戶所準備的。
reference
該版本型號常見于百科全書中,比較有名的是微軟的 encarta 系列。 reference 是最高級別,其包含的主題、圖像、影片剪輯等相對于 standard 和 deluxe 版均有大幅增加,容量由一張光盤猛增至三張光盤,并且加入了很強的交互功能,當然價格也不菲。可以這么說,這一版本的百科全書才能算是真正的百科全書,也是發燒友們收藏的首選。
professional(專業版)
專業版是針對某些特定的開發工具軟件而言的。專業版中有許多內容是標準版中所沒有的,這些內容對于一個專業的軟件開發人員來說是極為重要的。如微軟的 visual foxpro 標準版并不具備編譯成可執行文件的功能,這對于一個完整的開發項目而言顯然是無法忍受的,若客戶機上沒有 foxpro 將不能使用。如果用專業版就沒有這個問題了。
enterprise(企業版)
企業版是開發類軟件中的極品(相當于百科全書中的 reference 版)。擁有一套這種版本的軟件可以毫無障礙地開發任何級別的應用軟件。如著名的 visual c++ 的企業版相對于專業版來說增加了幾個附加的特性,如 sql 調試、擴展的存儲過程向導、支持 as/400 對 ole db 的訪問等。而這一版本的價格也是普通用戶無法接受的。如微軟的 visual studios 6.0 enterprise 中文版的價格為 23000 元。
六 其他版本
除了以上介紹的一些版本外,還有一些專有版本名稱。
update(升級版)
升級版的軟件是不能獨立使用的,該版本的軟件在安裝過程中會搜索原有的正式版,如果不存在,則拒絕執行下一步。如 microsoft office 2000 升級版、 windows 9x 升級版等等。
oem版
oem 版通常是捆綁在硬件中而不單獨銷售的版本。將自己的產品交給別的公司去賣,保留自己的著作權,雙方互惠互利,一舉兩得。
單機(網絡)版
網絡版在功能、結構上遠比單機版復雜,如果留心一下軟件的報價,你就會發現某些軟件單機版和網絡版的價格相差非常大,有些網絡版甚至多一個客戶端口就要加不少錢。
普及版
該版本有時也會被稱為共享版,其特點是價格便宜(有些甚至完全免費)、功能單一、針對性強(當然也有占領市場、打擊盜版等因素)。與試用版不同的是,該版本的軟件一般不會有時間上的限制。當然,如果用戶想升級,最好還是去購買正式版。
以上是一些主流的軟件版本號管理的情況,隨著軟件市場行為的變化,現在也出現了一些新的版本命名方式,比如windows xp中的xp是取自于experience中的第二、第三個字母。
基于商業上考慮,很多的軟件都不是非常嚴謹的遵循這個規則的。最有名的就是微軟了。例如他的 NT 系列版本。大家比較熟悉的是從 NT 4.0 開始的。 99 年推出了 windows 2000 , 2001 年退出了 windows xp , 2003 年推出了 windows 2003 ,乍一看版本區別蠻大的,但是看他們的內部版本號就會發現,變化其實并不大,只是界面變化的大了而已。這是軟件公司經常干的事情。 Window 2000 的版本號是 NT 5.0 , windows xp 的版本號是 NT 5.1 , windows 2003 的版本號是 NT 5.2 ,而現在的 longhorn 才是真正的 NT 6.0 ……
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
常見版本?
* alpha(α版) 內部測試版
* beta(β版) 外部測試版
* γ版 該版本已經相當成熟了,與即將發行的正式版相差無幾,如果用戶實在等不及了,盡可以裝上一試。
* demo 演示版
* Enhance 增強版或者加強版 屬于正式版
* Free 自由版
* Lite 精簡版,也可稱迷你版。
* Final 正式版,通過Alpha和Beta兩個測試版本后推出的,修正了軟件中存在的Bug。
* Pro:專業版,需用戶獲得注冊碼后才可以使用。
* Full version 完全版 屬于正式版
* shareware 共享版
* Release 發行版 有時間限制
* Upgrade 升級版
* Retail 零售版
* Enterprise 企業版
其他版本?
* Cardware 屬共享軟件的一種,只要給作者回復一封電郵或明信片即可。
(有的作者并由此提供注冊碼等),目前這種形式已不多見。
* Plus 屬增強版,不過這種大部分是在程序界面及多媒體功能上增強。
* Preview 屬預覽版
* Corporation & Enterprise 企業版?
* Standard 標準版?
* Mini 迷你版也叫精簡版只有最基本的功能?
* Premium 貴價版?
* Professional 專業版?
* Express 特別版?
* Deluxe 豪華版?
* Regged 已注冊版?
* CN 簡體中文版?
* CHT 繁體中文版?
* EN 英文版?
* Multilanguage 多語言版
* Build 為內部標號,也就是同一版本可以有多個標號,如發V1.0 Build 203等,一般情況下Build后面的數字越大,其版本越新。
特殊版本?
* Rip 是指從原版文件(一般是指光盤或光盤鏡像文件)直接將有用的內容(核心內容)分離出來,剔除無用的文檔,例如PDF說明文件啊,視頻演示啊之類的東西,也可以算做是精簡版吧…但主要內容功能是一點也不能缺少的!另:DVDrip是指將視頻和音頻直接從DVD光盤里以文件方式分離出來。
* trail 試用版(含有某些限制,如時間、功能,注冊后也有可能變為正式版)
* RC 版。是 Release Candidate 的縮寫,意思是發布倒計時,該版本已經完成全部功能并清除大部分的BUG。到了這個階段只會除BUG,不會對軟件做任何大的更改。
* RTM 版。這基本就是最終的版本,英文是 Release To Manufactur,意思是發布到生產商。
original Equipment Manufacturer (OEM)?
You may license products through an original Equipment Manufacturer (OEM). These products, such as Windows operating systems, come installed when you purchase a new computer.?
OEM軟件是給電腦生產廠的版本,無需多說。
* Full Packaged Product (FPP)–Retail?
Physical, shrink-wrapped boxes of licensed product that can be purchased in a local retail store or any local software retailer.?
FPP就是零售版(盒裝軟件),這種產品的光盤的卷標都帶有“FPP“字樣,比如英文WXP Pro的FPP版本的光盤卷標就是WXPFPP_EN,其中WX表示是Windows XP,P是Professional(H是Home),FPP表明是零售版本,EN是表明是英語。獲得途徑除了在商店購買之外,某些MSDN用戶也可以得到。
* Volume Licensing for organizations (VLO)?
You may enjoy potentially significant savings by acquiring multiple product licenses. Depending on the size and type of your organization.?
團體批量許可證(大量采購授權合約),這是為團體購買而制定的一種優惠方式。這種產品的光盤的卷標都帶有“VOL“字
轉載于:https://www.cnblogs.com/silfox/p/9428522.html
總結
以上是生活随笔為你收集整理的程序开发中版本管理之命名规则及格式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 努比亚连续按下android版本,虚惊一
- 下一篇: 小程序tabbar文字在服务器上不显示,