C++ 全栈知识体系C++ 全栈知识体系
✿导航
  • 基础
  • 函数
  • 知识点
  • IO框架
  • 新版本特性
  • 数据库原理
  • SQL语言
  • SQL - MySQL
  • NoSQL - Redis
  • NoSQL - ElasticSearch
  • 算法基础
  • 常见算法
  • 领域算法
  • 分布式算法
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • 计算机组成
  • 开发
  • 测试
  • 架构基础
  • 分布式系统
  • 微服务
  • 中间件
  • 概念
  • 理论
  • 架构设计原则
  • 设计模式
  • 协议
  • 技术选型
  • 编码规范
  • 流水线构建 - CI/CD
  • 知识点 - Linux
  • 网站 - Nginx
  • 容器化 - Docker
  • 容器编排 - Kubernetes
  • 服务网格 - Service Mesh Istio
  • 常用快捷键 - Shortcut
  • 工具使用 - Tools
  • 开源项目
  • 学习项目
  • 个人项目
  • 项目开发
  • 项目Idea
  • 并发
  • 部署
  • 分布式
  • 知识
  • 问题
  • 编程语言与技术
  • 系统与架构
  • 软件开发实践
  • 数据处理与应用设计
  • 个人
  • 产品
  • 团队
  • 知识体系
  • Vue
关于
✿导航
  • 基础
  • 函数
  • 知识点
  • IO框架
  • 新版本特性
  • 数据库原理
  • SQL语言
  • SQL - MySQL
  • NoSQL - Redis
  • NoSQL - ElasticSearch
  • 算法基础
  • 常见算法
  • 领域算法
  • 分布式算法
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • 计算机组成
  • 开发
  • 测试
  • 架构基础
  • 分布式系统
  • 微服务
  • 中间件
  • 概念
  • 理论
  • 架构设计原则
  • 设计模式
  • 协议
  • 技术选型
  • 编码规范
  • 流水线构建 - CI/CD
  • 知识点 - Linux
  • 网站 - Nginx
  • 容器化 - Docker
  • 容器编排 - Kubernetes
  • 服务网格 - Service Mesh Istio
  • 常用快捷键 - Shortcut
  • 工具使用 - Tools
  • 开源项目
  • 学习项目
  • 个人项目
  • 项目开发
  • 项目Idea
  • 并发
  • 部署
  • 分布式
  • 知识
  • 问题
  • 编程语言与技术
  • 系统与架构
  • 软件开发实践
  • 数据处理与应用设计
  • 个人
  • 产品
  • 团队
  • 知识体系
  • Vue
关于
  • 个人

    • Person - 陈皓(如何超过大多数人)
    • Person - 陈皓(技术人员的发展之路)
    • Person - 张一鸣(Stay hungry, Stay young)
    • Person - 乔布斯(Stay hungry, Stay foolish)
    • Person - 学习方法
  • 产品

    • Product - 需求实例化
    • Product - 兼容性原则
    • Product - 版本号
    • Product - 产品相关
  • 团队

    • Team - 雷军(穿越人生低谷的感悟)
    • Team - 陈皓(我做系统架构的一些原则)
    • Team - 陈皓(如何做一个有质量的技术分享)
    • Team - 人员定义

产品 - 版本号

Alpha、Beta、RC、GA版本的区别。

  • Alpha
  • Beta
  • Release Candidate
  • 完成期
  • 稳定版(Stable)
  • SNAPSHOT版本
  • Final

概述

有时候,软件会在Alpha或Beta版本前先发布Pre-alpha版本。一般而言相对于Alpha或Beta版本,Pre-alpha版本是一个功能不完整的版本。

Alpha

Alpha版本(内部测试版本)仍然需要测试,其功能亦未完善,因为它是整个软件发布周期中的第一个阶段,所以它的名称是“Alpha”,希腊字母中的第一个字母“α”。

Alpha版本通常会送到开发软件的组织或某群体中的软件测试者作内部测试。在市场上,越来越多公司会邀请外部客户或合作伙伴参与其测试。这令软件在此阶段有更大的可用性测试。

Beta

Beta版本是软件最早对外公开的软件版本,由公众(通常为公司外的第三方开发者和业余玩家)参与测试。 因为是Alpha的下一个阶段,所以为希腊字母的第二个字Beta (β)。 一般来说,Beta包含所有功能,但可能有一些已知问题和较轻微的程序错误(BUG),要进行调试(debug)。Beta版本的测试者通常是开发软件的组织的客户,他们会以免费或优惠价钱得到软件。Beta版本亦作为测试产品的支持和市场反应等。

其他情况不同企业有不同的称法,例如微软曾以Community Technology Preview(简称CTP,中文称为“社群技术预览”)为发布软件的测试版本之一,微软将这个阶段的软件散布给有需要先行试用的用户或厂商,并收集这些人的使用经验,以便作为进一步修正软件的参考。

Release Candidate

Release Candidate(简称RC)指可能成为最终产品的候选版本,如果未出现问题则可发布成为正式版本。在此阶段的产品通常包含所有功能、或接近完整,亦不会出现严重问题。

多数开源软件会推出两个RC版本,最后的RC2则成为正式版本。闭源软件较少公开使用,微软公司在Windows 7上应用此名称。苹果公司把在这阶段的产品称为“Golden Master Candidate”(简称GM Candidate),而最后的GM即成为正式版本。而 iOS 自 14.2 开始亦采用 RC 称呼处于此阶段的版本状态。

完成期

生产商发放(Release to Manufacturing,RTM)

生产商发放(Release to Manufacturing,缩写RTM)是软件产品准备交付时使用的术语,来自于以前还需要使用实体载具(光盘,硬盘等)来进行安装的时代。某些计算机程序以“RTM”作为软件版本代号,例如微软Windows 7发行零售版前的RTM版本主要是发放给组装机生产商用,使制造商能够提早进行集成工作或解决软件与硬件设备可能遇到的错误。RTM版本并不一定意味着创作者解决了软件所有问题;仍有可能向公众发布前更新版本。以Windows 7为例:RTM版与零售版的版本号是一样的。

一般可用(General availability,GA) 或者 Release

一般可用(General availability, 缩写GA)是所有必要的商业活动已经完成,该软件产品已经可以发售的阶段。然而,这取决于语言、地域和电子设备与媒体的可用性,有些地区之间可能会有上市时间的延迟。商业活动可能也包括安全性和合法测试,以及本地化和全球销售的可能性评估。RTM与GA的间隔可能会是1周或几个月,因为在此过程中需要进行许多商业活动。在这个阶段,可以说软件已经“上线”了。

网络分发(Release to Web,RTW)

网络分发(Release to Web,缩写RTW),或称Web发布是一种利用互联网进行分发的软件交付方式。制造商在这种类型的发布中并不生产实体软件工具,而会借由OTA来进行发放。随着互联网使用人数的增长,RTW变得越来越普遍。

稳定版(Stable)

稳定版本来自预览版本释出使用与改善而修正完成,通常是初始版本进行几个小更新后的版本。为目前所使用的软件在符合需求规格的硬件与操作系统中运行不会造成严重的不兼容或是硬件冲突,其已受过某定量的测试无误后所释出者。

软件支持 在软件的生命周期内,有时会发布新版本、补丁或服务包。例如Windows XP,其32位有3个服务包,64位版本有两个。这些服务包包含以单个可安装软件包的形式提供的更新、补丁和功能增强,也有新功能提供。一些软件,例如防病毒软件和游戏,需要长期的更新支持。

软件寿命结束 主条目:产品寿命结束

当软件不再销售并已被停止支持时,该产品即达到使用寿命终止阶段。但忠实用户群可能会继续存在,甚至是持续很久。例如Windows XP在中国大陆的占有率依然很高。

SNAPSHOT版本

SNAPSHOT:快照版,可以稳定使用,且仍在继续改进版本。

Final

最终版,也是正式发布版的一种表示方法。比如Hibernate。

Last Updated:
Contributors: klc407073648
Prev
Product - 兼容性原则
Next
Product - 产品相关