標籤:
轉自:http://www.flighty.cn/html/net/20121029_163.html輕狂註:各種軟體的版本號碼經常搞得使用者雲裡霧裡,不知道軟體的開發人員到底是如果定義自己軟體的版本的,所以,有必要把軟體版本號碼命名規則方面的常識列一下。
版本控制比較普遍的 3 種命名格式 :
一、GNU 風格的版本號碼命名格式 :主要版本號 . 子版本號碼 [. 修正版本號碼 [. 編譯版本號碼 ]]英文對照 : Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]樣本 : 1.2.1, 2.0, 5.0.0 build-13124
二、Windows 風格的版本號碼命名格式 :主要版本號 . 子版本號碼 [ 修正版本號碼 [. 編譯版本號碼 ]]英文對照 : Major_Version_Number.Minor_Version_Number[Revision_Number[.Build_Number]]樣本: 1.21, 2.0
三、.Net Framework 風格的版本號碼命名格式:主要版本號.子版本號碼[.編譯版本號碼[.修正版本號碼]]英文對照: Major_Version_Number.Minor_Version_Number[.Build_Number[.Revision_Number]]版本號碼由二至四個部分組成:主要版本號、次版本號碼、組建號和修訂編號。主要版本號和次版本號碼是必選的;組建號和修訂編號是可選的,但是如果定義了修訂編號部分,則組建號就是必選的。所有定義的部分都必須是大於或等於 0 的整數。
應根據下面的約定使用這些部分:Major :具有相同名稱但不同主要版本號的程式集不可互換。例如,這適用於對產品的大量重寫,這些重寫使得無法實現向後相容性。Minor :如果兩個程式集的名稱和主要版本號相同,而次版本號碼不同,這指示顯著增強,但照顧到了向後相容性。例如,這適用於產品的修正版或完全向後相容的新版本。Build :組建號的不同表示對相同源所作的重新編譯。這適合於更改處理器、平台或編譯器的情況。Revision :名稱、主要版本號和次版本號碼都相同但修訂編號不同的程式集應是完全可互換的。這適用於修複以前發布的程式集中的安全性漏洞。程式集的只有組建號或修訂編號不同的後續版本被認為是先前版本的Hotfix (Hotfix) 更新。
版本號碼管理原則
一、 GNU 風格的版本號碼管理原則:1.項目初版本時 , 版本號碼可以為 0.1 或 0.1.0, 也可以為 1.0 或 1.0.0, 如果你為人很低調 , 我想你會選擇那個主要版本號為 0 的方式 ;2.當項目在進行了局部修改或 bug 修正時 , 主要版本號和子版本號碼都不變 , 修正版本號碼加 1;3.當項目在原有的基礎上增加了部分功能時 , 主要版本號不變 , 子版本號碼加 1, 修正版本號碼複位為 0, 因而可以被忽略掉 ;4.當項目在進行了重大修改或局部修正累積較多 , 而導致項目整體發生全域變化時 , 主要版本號加 1;5.另外 , 編譯版本號碼一般是編譯器在編譯過程中自動產生的 , 我們只定義其格式 , 並不進行人為控制。
二、 Window 下的版本號碼管理原則:1.項目初版時 , 版本號碼為 1.0 或 1.00;2.當項目在進行了局部修改或 bug 修正時,主要版本號和子版本號碼都不變 , 修正版本號碼加 1;3.當項目在原有的基礎上增加了部分功能時 , 主要版本號不變 , 子版本號碼加 1, 修正版本號碼複位為 0, 因而可以被忽略掉 ;4.當項目在進行了重大修改或局部修正累積較多 , 而導致項目整體發生全域變化時 , 主要版本號加 1;5.另外 , 編譯版本號碼一般是編譯器在編譯過程中自動產生的 , 我們只定義其格式 , 並不進行人為控制。
另外 , 還可以在版本號碼後面加入 Alpha, Beta, Gamma, Current, RC (Release Candidate), Release, Stable 等尾碼 , 在這尾碼後面還可以加入 1 位元字的版本號碼。對於使用者來說 , 如果某個軟體的主要版本號進行了升級 , 使用者還想繼續那個軟體 , 則發行軟體的公司一般要對使用者收取升級費用 ; 而如果子版本號碼或修正版本號碼發生了升級 , 一般來說是免費的。
附:
alphal 自我裝載版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 (印象中是,不敢確認)。這樣就可以持續的賺廣大客戶的錢。畢竟人的眼睛看得東西是最直觀的,所以給人感覺也是變化最大的。
[轉]軟體項目版本號碼的命名規則、格式介紹及管理原則