我经常看到或听到人们将某些东西描述为与代码相关的“稳定”。
我认为“稳定”类库是一个功能已经过良好测试、在现实世界中使用并且没有被发现包含任何错误的类库是否正确?或者至少是任何目的严重的错误。
那么,这与操作系统等大型软件有什么关系呢?我经常看到一个被描述为“稳定”的下载,它通常比最新版本落后几个版本。一个软件究竟什么时候变得稳定?是否有任何标准来确定这一点?
它没有被改变很多。通常这意味着它很好,可以工作并且没有错误。
就库而言,“稳定”版本通常是“推荐”版本,其中也有更“前沿”的版本。在这种情况下,将稳定版本用于生产代码是明智的。
一个软件究竟什么时候变得稳定?是否有任何标准来确定这一点?
这是一个非常主观的标准。通常是因为发布经过了严格的 QA 和/或发布时没有报告任何严重问题。然而,该术语的使用取决于团队的衡量标准,因此一个人的“稳定”可能不是另一个人。
该定义在技术上基于代码的生产者或标记者所定义的任何内容。一个公司/项目定义不必匹配另一个。
但它通常与里程有关。在某个时候,您声明您将停止添加功能并准备发布。然后在您的测试过程中,错误报告率会下降,然后您将该产品推广给更多的人 alpha、beta、发布候选等。更多的人更多的测试人员,更多的潜在错误。随着产品的成熟,用户群增加,错误率最终会减慢。当它达到您认为它具有您想要的功能的程度时,它可以工作,并且错误率足够低,您声明它是稳定的,如果还没有从该版本/产品中移出更多资源并专注于下一个一。
该指标通常与错误率、错误数量、您在客户/用户支持上花费的时间有关。当用户停止向您抱怨该产品时,是因为:1)他们停止使用它 2)他们继续使用它,但它已经成熟到足以让他们使用而不会抱怨的程度。
可能有更正式的定义,但根据我的经验,它意味着经过测试并发现可用并满足要求的版本;也许不是没有错误,但没有重大错误。大多数用户将能够使用它而不会遇到任何重大问题(例如数据丢失、崩溃)。
一个不稳定的版本要么有很多错误(或一些重大错误),要么根本没有经过测试。