我知道有很多关于如何使用(甚至使用)软件版本的想法.即使我想知道软件版本在1.x之后应该变成2.x.
在我的例子中,我使用1和2,但它当然可以是任何其他数字.
是在完全重写之后吗?还是一个新的/大部分更新的用户界面?一堆新的(主要)功能?在重写程序后,它的"核心"?
当我看到(可能是一个不好的例子)Internet Explorer或Chrome时,我无法真正说出为什么他们如此迅速地增加了他们的"主要"版本......
我现在的想法是,当一个程序从1.x变为2.x时,它应该用至少相同的功能完全重写,只有更好(更稳定,更优化,更清晰的代码等)
有什么想法吗?
cde*_*zaq 11
最终,我们开发的任何东西都是为某人或某物使用.当某些东西被使用,并且有能力改变时,无论谁使用它通常都想知道什么时候事情发生变化以及它们有多少变化,这样他们就可以为任何破坏他们如何使用它的东西做好准备.
为此,版本号的目标是快速确定两个版本的某些东西(在这种情况下,软件项目的两个版本)之间的差异范围.
总结到目前为止:
第2 - 4点告诉我们,我们的软件应该有一个定义良好的外部接口(API),并且我们软件的版本控制系统应该指示外部接口何时发生变化,因为这是其他人使用的.
该语义版本项目详细介绍了规范究竟如何应该这样做.我不会重复规范中的所有内容(实际上,它不是很长),但这里有一些要点:
规范中还有一些细节,以及其他理由和理由,但这些都是要点.
最后,所有版本号都提供了一种结构化的方式来指示对使用该软件的其他实体的更改.只要您满足他们的需求并且一致,任何版本控制方案都可以.
通常,这样的版本更改将指示功能上的重大更改。
我倾向于使用的经验法则是:
1.0-2.0(重大更改,大量的附加或修改的功能)
1.0-1.1(较小更改,一些附加或修改的功能)
1.0-1.0.1(错误修复或其他较小的补丁,核心功能未更改)
您可以遵循几种不同的方案,这些方案在http://en.wikipedia.org/wiki/Software_versioning中列出
| 归档时间: |
|
| 查看次数: |
2910 次 |
| 最近记录: |