首页 >科技 > 内容

苹果最新的软件更新有漏洞这位资深的苹果工程师解释了原

科技 2020-05-23 09:16:46

在某种程度上,苹果在发布新软件时处于一种“不做就不做,不做就不做”的境地。如果苹果像iOS 12那样推出一项专注于提高整体性能和系统可靠性的更新,该公司就会因为没有引入创新的新功能而受到批评。另一方面,如果苹果推出充满新功能的软件更新,那么不可避免地会有大量的漏洞需要解决。当苹果在ios13发布之前就发布了测试版ios13.1时,我们看到了这一趋势。

苹果的情况也一样糟糕。尽管最近发布的macOS Catalina更新并没有包含很多新特性,但许多用户在升级系统后都遇到了很多令人沮丧的可用性问题。更重要的是,许多用户在安装过程中遇到了故障。虽然苹果公司将不可避免地进行升级,但人们不禁要问,为什么苹果公司从一开始就很难推出新的iOS和macOS无缝更新。

为了解决这个问题,你肯定会想看看David Shayer为《花絮》(TidBITS)写的新文章,他深入研究了一些涉及苹果修复漏洞的幕后动态。Shayer之前在苹果公司做了18年的软件工程师,参与了很多项目。换句话说,谢伊尔清楚地知道他在说什么,并就苹果在软件方面面临的一些困难向我们提供了一个清晰、客观的观点。

Shayer给出的一个更有趣的解释涉及到苹果内部的一个过程,在这个过程中,老的bug远没有新bug那么重要。

如果一个工程师不小心破坏了一个工作特性,这被称为回归。他们被期望去修复它。

但是,如果您提交了一个缺陷报告,并且QA工程师确定该缺陷在以前的软件版本中也存在,那么它就被标记为“不是回归”。“根据定义,这不是一个新的错误,这是一个旧的错误。很有可能,没有人会被指派去修复它。

在苹果公司,并非所有的团队都是这样工作的,但很多人都是这样做的。它快把我逼疯了。我在苹果认识的一个团队甚至制作了“Not a Regression”t恤。如果一个bug不是回归,他们就不需要修复它。这就是为什么我上面提到的iCloud照片上传错误和联系人同步错误可能永远无法修复的原因。

沙耶尔提出的另一种解释是,苹果今天的顾客比以往任何时候都多,这也是一个经常被忽视的解释。此外,苹果的软件比以往任何时候都要复杂得多。换句话说,我们已经远离了苹果向相对小众用户群体推出OS X更新的时代。今天,苹果公司推出了先进的软件,很快就能在数百万台设备上使用。

沙耶尔指出,现代苹果操作系统有数千万行代码。你的Mac、iPhone、iPad、Apple Watch、AirPods和HomePod都可以互相通话,也可以和iCloud通话。所有的应用程序都是多线程的,可以通过(不完美的)互联网互相交流。”

总之,Shayer注意到,测试这样复杂的软件必然会成为一项更具挑战性的工作。我们很少能看到苹果的幕后故事,所以你肯定想去看看Shayer的整篇文章。它不仅信息量大,而且非常有趣。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢。