Board logo

标题: [原创] 批处理程序开发之程序命名与版本规范 [打印本页]

作者: cjiabing    时间: 2011-12-21 17:27     标题: 批处理程序开发之程序命名与版本规范

本帖最后由 cjiabing 于 2011-12-21 19:18 编辑

.    .对于这些大问题,谈也不是,不谈也不是,依个人感觉还是得谈,接着上次的《批处理程序开发简述》继续谈,谈多了也会成为理论。至于“批处理是否适合做大程序?”或者“批处理是否适合写软件?”的问题让它们见鬼去吧。先探索、先实践,把路走出来。让批处理成为一种技术、一种艺术,一种创造。
      
      本篇:批处理程序开发之程序命名与版本规范
      主要内容:谈谈程序开发方面对程序名称命名和版本设定的一些知识以供批处理程序开发参考。
      如何为你的批处理程序取一个好的名字呢?你的批处理程序有版本号吗?如何确定你的批处理程序的版本号呢?请阅读以下内容。
      关于命名的东西我想谈很多,比如变量命名、标签命名、路径命名、文件命名、程序命名等等,由于篇幅所限,这里仅谈程序程序的命名与版本。部分知识来自网络。
      一、程序命名
      这里的命名主要指赋予某个程序软件一个统一的名称。因为语言的不同,可能同时存在中英文两种命名。命名通常与程序的意义和特点有关,程序名称简洁明了,突出特点,深具含义。好的程序有好的名称,为你的批处理程序取一个简单又好记的名字吧。
      以下列举一些常用程序的名称及版本号,不做解释。
软件名称与版本号示例:
————————————————————————
程序名称      文件名称         程序版本                      目录名称     
腾讯QQ     QQ.exe      QQ2010 Build 010版        C:\Program Files\Tencent\QQ
360杀毒    360sd.exe      360sd_2.0.1.2045B    C:\Program Files\360\360sd
暴风影音    storm.exe      storm_595                 C:\Program Files\StormII
千千静听    TTPlayer.exe    ttpsetup_5713          C:\Program Files\TTPlayer
PPS播放器  PPStream.exe   ppstreamsetup         C:\Program Files\PPStream
     
      二、版本知识
      我们在下载安装程序或者查看程序帮助一栏的“关于”内容时,往往能查看到程序的版本信息。因为批处理创造过程的需要,或者批处理在功能上分化的需要,现实的需要等,批处理往往出现许多不同的版本。在我们创作批处理作品的过程中往往会遇到这些问题,下面介绍一些程序版本方面的知识。
      (一)常见的版本标记
      
V(Version):版本类型

Alpha版(内部测试版):
Beta版(外部测试版):
Demo版(演示版):
trial(试用版)
unregistered(未注册版)
registered (注册版)
standard (标准版)
deluxe (豪华版)
Enhance版 (增强版或加强版)
reference (珍藏版)
professional(专业版)
enterprise (企业版)
Ultimate (终极版)
oem (单机版)
Free版(自由版):
Full Version版(完全版):
Shareware版(共享版):
Release版(发行版):
Upgrade版(升级版):
Retail:零售版。  
SR(修正版或更新版)
Pro(专业版)
Plus(加强版)
Delux(豪华版)
Build(内部标号)用数字或日期标示版本号的一种方式。(如:VeryCD eMule v0.48a Build 071112)
Lite:精简版。
SC: Simplified Chinese简体中文版。   
CN: 简体中文版   GBK: 简体中文汉字内码扩展规范版。
TC: Traditional Chinese繁体中文版。
CHT: 繁体中文版
BIG5: 繁体中文大五码版。
EN: 英文版   
Multilanguage: 多语言版
UTF8: Unicode Transformation Format 8 bit,对现有的中文系统不是好的解决方案。
RC版:Release Candidate,是 Release Candidate 的缩写,意思是发布倒计时,候选版本。
Final版:正式版。
Cardware: 属共享软件的一种  
Preview: 预览版   
Corporation & Enterprise:企业版   
Mini: 迷你版也叫精简版只有最基本的功能   
Professional/pro:专业版   
Express: 特别版   
Deluxe: 豪华版   
SP:server pack 服务版、补丁版。Windows 7 SP1即为Windows 7的第一个补丁包。
Regged: 已注册版   
Rip:分离版。   
RTM: 这基本就是最终的版本,英文是 Release To Manufactur,意思是发布到生产商。   
OEM: Original Equipment Manufacturer 是给电脑生产厂的版本,软件发行商于电脑生产厂家的定制版本。    

       以上只是对一些常见版本标记进行总结汇总,使用时要注意理解版本标记的作用,在2楼附有版本标记的详细介绍。
       补充对Build的说明
       Build版在软件发布上主要用于区分不同时期的版本,它是编译时的版本标记,一般序号都是递增的。可用于辨别软件的版本。 版本号里面的Build说明这个版本是第几次编译的结果,它后面一般跟数字或日期。举个例子说吧,一个软件,第一次测试完后,肯定会有一些bug,然后开发人员针对bug进行修改,修改完后,发布一个修改后的版本,这个版本就是build版本,然后测试人员针对build版本进行回归测试,测试以前bug的修复情况以及是否存在新的bug,然后反复进行回归测试,直到测试过程结束为止。
       Build与Beta同为测试版,但Build版本比Beta版本更成熟稳定,如:QQ for Mac 1.0 Beta2 Build 676
关于Windows 7 旗舰版的测试版本及版本演变过程
2007年12月20日 :windows 7 Milestone1(build 6519.1)
2008年12月12日 :windows 7 beta(build7000)
2009年 4月 9日 :windows 7 Preview Release To Manufacture 1(build7106)
2009年 4月21日 :windows 7 Release Candidate 1(build7100)
2009年 5月 7日 :windows 7 Preview Release To Manufacture 2(build 7127)
2009年 5月29日 :windows 7 Release Candidate 2 (build7200)
2009年 6月 8日 :windows 7 build 7231
2009年 6月18日 :windows 7 build 7260
2009年 6月22日 :windows 7 build 7264
2009年 7月14日 :windows 7 Release To Manufacture (build 7600.16385)


      (二)版本的管理使用
       1、版本命名规范
       软件版本号由四部分组成:
       第一个1为主版本号,第二个1为子版本号,第三个1为阶段版本号,第四部分为日期版本号加希腊字母版本号;
       希腊字母版本号共有5种,分别为:base、alpha、beta、RC、release。例如:1.1.1.051021_beta。
       2、 版本号的修改规则
1)主版本号(1):
     当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。
2)子版本号(1):
     当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。
3)阶段版本号(1):
     一般是 Bug 修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的bug即可发布一个修订版。此版本号由项目经理决定是否修改。
4)日期版本号(051021):
     用于记录修改项目的当前日期,每天对项目的修改都需要更改日期版本号。此版本号由开发人员决定是否修改。
5)希腊字母版本号(beta):
    此版本号用于标注当前版本的软件处于哪个开发阶段,当软件进入到另一个阶段时需要修改此版本号。此版本号由项目决定是否修改。
       3、其他参考
版本号的命名格式
  例如:DOS4.0,主版本号是4,次版本号是0。
  版本控制比较普遍的 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) 更新。

版本号管理策略
一、 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 位数字的版本号 .
  对于用户来说 , 如果某个软件的主版本号进行了升级 , 用户还想继续那个软件 , 则发行软件的公司一般要对用户收取升级费用 ; 而如果子版本号或修正版本号发生了升级 , 一般来说是免费的 .

      三、实战举例
      以上及以下是一些常见程序的命名与版本信息,仅供参考:
     
QIYImedia
Windows 优化大师 v5.4 Build 602
wmp11-windowsxp-x86-zh
usbcleaner20101017.zip
office2007
Foxmail 7.0.1.81
theworld_chrome_4.0.4.313
MPlayer_all_setup
microsoft_ip_models_631
sogou_pinyin_60b
instbeta
kmplayer2010
AVIConverter_Demo
npp.5.6.7.Installer
install_flash_player_ax
ha_eXeScope
QQ2010 Beta2 (1590)  
手机QQ2009 Beta1 build0047 Java
QQ for Mac 1.0 Beta2 Build 676
腾讯QQ 2009 Build 375 Beta
恶意软件清理助手 V2.89 Build 023 简体绿色版

      在批处理方面,如:
  1. 走迷宫 v2.3.bat
  2. 批处理象棋使用引擎版V1-7-15.bat
  3. cmdlrc21.bat
  4. BatMPlayer2012Beta101.bat
复制代码

      版本号的意义在于区分同一程序不停地修正过程中各个阶段的程序,也可以让人一目了然地知道程序的大概分类,便于管理和使用。当然,如果你的程序只是区区几行,或者你个人只是把它当做草芥一样扔掉的,我想你不必这样大费周章。
作者: cjiabing    时间: 2011-12-21 17:42     标题: 软件版本知识

本帖最后由 cjiabing 于 2011-12-21 19:21 编辑

软件版本知识

  大家或许已经注意到了,网上下载的软件常常标有beta版、demo版等软件版本信息,这些版本信息实际上有其内在的含义。下面我们就将一些常见的软件版本信息向大家做一详细的介绍。
编辑本段测试版与演示版
α(Alpha)版
  此版本表示该软件仅仅是一个初步完成品,通常只在软件开发者内部交流,也有很少一部分发布给专业测试人员。一般而言,该版本软件的bug(漏洞)较多,普通用户最好不要安装。主要是开发者自己对产品进行测试,检查产品是否存在缺陷、错误,验证产品功能与说明书、用户手册是否一致。
β(beta)版
  该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过大规模的发布测试来进一步消除。这一版本通常由软件公司免费发布,用户可从相关的站点下载。通过一些专业爱好者的测试,将结果反馈给开发者,开发者们再进行有针对性的修改。该版本也不适合一般用户安装。
trial(试用版)
  试用版软件在最近的几年里颇为流行,主要是得益于互联网的迅速发展。该版本软件通常都有时间限制,过期之后用户如果希望继续使用,一般得交纳一定的费用进行注册或购买。有些试用版软件还在功能上做了一定的限制。
unregistered(未注册版)
  未注册版与试用版极其类似,只是未注册版通常没有时间限制,在功能上相对于正式版做了一定的限制,例如绝大多数网络电话软件的注册版和未注册版,两者之间在通话质量上有很大差距。还有些虽然在使用上与正式版毫无二致,但是动不动就会弹出一个恼人的消息框来提醒你注册,如看图软件acdsee、智能陈桥汉字输入软件等。
demo版
  也称为演示版,主要是演示正式软件的部分功能,用户可以从中得知软件的基本操作,为正式产品的发售扩大影响。如果是游戏的话,则只有一两个关卡可以玩。该版本也可以从Internet上免费下载。demo版仅仅集成了正式版中的几个功能,颇有点像unregistered(未登记的;未注册的)。不同的是,demo版一般不能通过升级或注册的方法变为正式版。
  以上是软件正式版本推出之前的几个版本,α、β、γ可以称为测试版,大凡成熟软件总会有多个测试版,如windows 98的β版,前前后后将近有10个。这么多的测试版一方面为了最终产品尽可能地满足用户的需要,另一方面也尽量减少了软件中的bug。而trial、unregistered、demo有时统称为演示版,这一类版本的广告色彩较浓,颇有点先尝后买的味道,对于普通用户而言自然是可以免费尝鲜了。
编辑本段正式版

  不同类型的软件的正式版本通常也有区别。
release
  该版本意味“最终释放版”,在出了一系列的测试版之后,终归会有一个正式版本,对于用户而言,购买该版本的软件绝对不会错。该版本有时也称为标准版。一般情况下,release不会以单词形式出现在软件封面上,取而代之的是符号®,如windows nt® 4.0、ms-dos® 6.22等。
registered
  很显然,该版本是与unregistered相对的注册版。注册版、release和下面所讲的standard版一样,都是软件的正式版本,只是注册版软件的前身有很大一部分是从网上下载的。
standard
  这是最常见的标准版,不论是什么软件,标准版一定存在。标准版中包含了该软件的基本组件及一些常用功能,可以满足一般用户的需求。其价格相对高一级版本而言还是“平易近人”的。
deluxe
  顾名思义即为“豪华版”。豪华版通常是相对于标准版而言的,主要区别是多了几项功能,价格当然会高出一大块,不推荐一般用户购买。此版本通常是为那些追求“完美”的专业用户所准备的。
Enhance版(增强版或加强版)
  如果是一般软件,一般称作“增强版”,会加入一些实用的新功能。如果是游戏,一般称作“加强版”,会加入一些新的游戏场景和游戏情节等。这是正式发售的版本。
reference
  该版本型号常见于百科全书中,比较有名的是微软的encarta系列。reference是最高级别,其包含的主题、图像、影片剪辑等相对于standard和deluxe版均有大幅增加,容量由一张光盘猛增至三张光盘,并且加入了很强的交互功能,当然价格也不菲。可以这么说,这一版本的百科全书才能算是真正的百科全书,也是发烧友们收藏的首选。
professional(专业版)
  专业版是针对某些特定的开发工具软件而言的。专业版中有许多内容是标准版中所没有的,这些内容对于一个专业的软件开发人员来说是极为重要的。如微软的visual foxpro标准版并不具备编译成可执行文件的功能,这对于一个完整的开发项目而言显然是无法忍受的,若客户机上没有foxpro将不能使用。如果用专业版就没有这个问题了。
enterprise(企业版)
  企业版是开发类软件中的极品(相当于百科全书中的reference版)。拥有一套这种版本的软件可以毫无障碍地开发任何级别的应用软件。如著名的visual c++的企业版相对于专业版来说增加了几个附加的特性,如sql调试、扩展的存储过程向导、支持as/400对ole db的访问等。而这一版本的价格也是普通用户无法接受的。   如微软的visual studios 6.0 enterprise中文版的价格为23000元。
Ultimate(终极版)
  从英文字面意思上来说是 1. 最后的, 最终的2. 基本的, 根本的3. 最大的, 极限程度 的意思,用Ultimate命名的版本拥有最强大,最完全的功能,最佳的稳定性等优良特性,并且与同类软件相比,集成了所有的功能并有一些特殊的服务提供.Ultimate专为骨灰级的使用者设计,以完善,完美,为宗旨.也是众多用户追捧的一个版本,当然,售价也是最高的.
编辑本段其他版本
  除了以上介绍的一些版本外,还有一些专有版本名称。
update(升级版)
  升级版的软件是不能独立使用的,该版本的软件在安装过程中会搜索原有的正式版,如果不存在,则拒绝执行下一步。如microsoft office 2000升级版、windows 9x升级版等等。
oem版
  oem版通常是捆绑在硬件中而不单独销售的版本。将自己的产品交给别的公司去卖,保留自己的著作权,双方互惠互利,一举两得。
单机(网络)版
  网络版在功能、结构上远比单机版复杂,如果留心一下软件的报价,你就会发现某些软件单机版和网络版的价格相差非常大,有些网络版甚至多一个客户端口就要加不少钱。
普及版
  该版本有时也会被称为共享版,其特点是价格便宜(有些甚至完全免费)、功能单一、针对性强(当然也有占领市场、打击盗版等因素)。与试用版不同的是,该版本的软件一般不会有时间上的限制。当然,如果用户想升级,最好还是去购买正式版。   以上是一些常见软件版本的简要介绍,随着软件市场行为的变化,现在也出现了一些新的版本命名方式,比如windows xp中的xp是取自于experience中的第二、第三个字母。希望以上内容能够对大家的购买、使用和下载软件有所帮助。
作者: qq2501    时间: 2011-12-21 20:30

命名规则 “简洁 易懂 明确” 就是最好的
作者: Demon    时间: 2011-12-21 21:26

期待《批处理程序编码规范》




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2