《JavaScript开发框架权威指南》——1.5 语义化版本控制

简介: 语义化版本格式要求开发者创建定义明晰的API(通过文档或者自文档化的代码),从而为用户使用软件库提供唯一的切入点。新启动的项目一般从版本0.0.0开始,然后随着新版本的推出,版本号逐渐增加。

本节书摘来自异步社区《JavaScript开发框架权威指南》一书中的第1章,第1.5节,作者:【美】Tim Ambler , Nicholas Cloud著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.5 语义化版本控制

如果安装了jQuery(见清单),那么请查看项目的Bower清单。你所看到的应当与清单相仿。

清单1-7 语义化版本号

"dependencies": {
    "jquery": "~2.1.3"
}

清单中的版本号2.1.3(请暂时忽略~)就是所谓的语义化版本号(Semver,Semantic Version)。语义化版本控制能够帮助开发者按照通用格式为其项目指定版本号。该格式如下所示。

Version X.Y.Z(Major.Minor.Patch)
语义化版本格式要求开发者创建定义明晰的API(通过文档或者自文档化的代码),从而为用户使用软件库提供唯一的切入点。新启动的项目一般从版本0.0.0开始,然后随着新版本的推出,版本号逐渐增加。通常认为版本号在1.0.0以下的项目正处于紧密开发中,此时允许在不变更主版本号(Major)的情况下,对其API进行重大改变。而版本号1.0.0及以上的项目,在更改版本号时需要遵守以下规则。

当更新导致用户使用项目API的方式发生重大变化的时候,项目的主版本号应当发生 改变。
当以向后兼容的方式添加新特性的时候 (也就是说,现有API不会失效),项目的次版本号应当发生改变。
当以向后兼容的方式修正bug的时候,项目的修订号(Patch Version Number)应当发生改变。
这些规则可以让开发者了解任意两个版本之间的变化程度。随着Bower清单的增长以及项目所需依赖项的增多,这些信息的作用会逐渐显现出来。

注意:
 

清单中的“~”号表示无论何时运行install命令,都允许以“相对接近”2.1.3的版本对jQuery进行升级。如果“相对接近”和“自动安装”这样的字眼放在一起使用让你觉得浑身不舒服的话,那就对了!最佳实践建议,在Bower中引用依赖项的时候,应当避免使用“~X.Y.Z”这样的格式。相反,你最好明确指定要在项目中引入的依赖项的版本。当有更新发布时,你可以手动检查,并决定是否以及何时进行升级。本章随后的示例将会遵从此建议。

相关文章
|
4月前
|
JavaScript 前端开发 程序员
《JavaScript权威指南第7版》中文PDF+英文PDF+源代码 +JavaScript权威指南(第6版)(附源码)PDF下载阅读分享推荐
JavaScript是Web标准语言,广泛应用于各类浏览器,造就了其最广泛部署的地位。Node.js的兴起扩展了JavaScript的使用场景,使其成为开发者首选语言。无论新手还是经验丰富的程序员,都能受益于学习JavaScript。[《JavaScript权威指南第7版》资源链接](https://zhangfeidezhu.com/?p=224)
254 5
《JavaScript权威指南第7版》中文PDF+英文PDF+源代码 +JavaScript权威指南(第6版)(附源码)PDF下载阅读分享推荐
|
6月前
|
XML 前端开发 JavaScript
JavaScript 权威指南第七版(GPT 重译)(六)(2)
JavaScript 权威指南第七版(GPT 重译)(六)
97 4
JavaScript 权威指南第七版(GPT 重译)(六)(2)
|
6月前
|
存储 前端开发 JavaScript
JavaScript 权威指南第七版(GPT 重译)(六)(4)
JavaScript 权威指南第七版(GPT 重译)(六)
208 3
JavaScript 权威指南第七版(GPT 重译)(六)(4)
|
6月前
|
前端开发 JavaScript 安全
JavaScript 权威指南第七版(GPT 重译)(六)(1)
JavaScript 权威指南第七版(GPT 重译)(六)
69 3
JavaScript 权威指南第七版(GPT 重译)(六)(1)
|
6月前
|
存储 前端开发 JavaScript
JavaScript 权威指南第七版(GPT 重译)(五)(4)
JavaScript 权威指南第七版(GPT 重译)(五)
65 9
|
6月前
|
前端开发 JavaScript 程序员
JavaScript 权威指南第七版(GPT 重译)(五)(3)
JavaScript 权威指南第七版(GPT 重译)(五)
62 8
|
6月前
|
机器学习/深度学习 前端开发 JavaScript
JavaScript 权威指南第七版(GPT 重译)(五)(1)
JavaScript 权威指南第七版(GPT 重译)(五)
66 8
|
6月前
|
JSON JavaScript 前端开发
JavaScript 权威指南第七版(GPT 重译)(四)(4)
JavaScript 权威指南第七版(GPT 重译)(四)
106 6
|
6月前
|
前端开发 JavaScript API
JavaScript 权威指南第七版(GPT 重译)(六)(3)
JavaScript 权威指南第七版(GPT 重译)(六)
105 4
|
6月前
|
JSON 前端开发 JavaScript
JavaScript 权威指南第七版(GPT 重译)(五)(2)
JavaScript 权威指南第七版(GPT 重译)(五)
103 5
下一篇
无影云桌面