蘋果近期軟件更新問題多多前資深工程師有話說
通常情況下,蘋果總會裝作若無其事地發佈軟件更新,比如側重於提升整體性能和系統可靠性的iOS 12更新。但是在最新的iOS 13身上,事情似乎進展得併沒有那麼順利。早在iOS 13正式發布前,許多人就已經在iOS 13.1的公測版本中感受到了這一點。在Mac平台,最近發布的macOS Catalina更新並沒有引入太多新功能,但還是有不少用戶抱怨其帶來的糟糕體驗。
(圖自:Apple,via BGR)
報導稱,許多用戶在macOS Catalina的安裝過程中遇到了麻煩。儘管蘋果可以通過後續打補丁來解決問題,但人們不禁要問,為何蘋果不做好充分的測試就將新版本放出來?
對於這些問題,曾在蘋果工作18 年的資深工程師David Shayer,或許可以給我們一些解釋。Shayer 主要從蘋果公司的內部流程來解釋,因為較早的bug 會被賦予比新bug 更低的優先級。
若一位工程師不小心破壞了一項可用功能,則會在回歸(regression)中修復它。
但若提交了錯誤報告,且質量檢查工程師認定該軟件的先前版本中也存在該bug,則會將其標記為非回歸(not a regression)。
根據相關定義,它算不上是一個新問題,而是舊bug 。如此一來,很可能沒人會被指派去修復它。
儘管並非所有蘋果團隊都在這麼幹,但這種情況並不罕見,有時挺讓人抓狂的。我認識的某個團隊,甚至製作了一件’Not Regression’的T 卹。
或許這就是上面提到的iCloud 照片上傳和聯繫人同步bug 可能永遠得不到修復的原因。
此外,David Shayer 提出了另一個經常被忽視的解釋—— 今天的蘋果,比以往擁有更多的客戶。此外,蘋果的軟件,也變得比以往任何時候都更加複雜。
換言之,當蘋果從面向小眾的OS X 更新開始轉型,這種情況就越跑越偏了。現如今,蘋果需要迅速為數百萬設備用戶推出先進的軟件更新。
現代蘋果操作系統具有數千萬行的代碼,您的Mac、iPhone、iPad、Apple Watch、AirPods和HomePod都支持互通和連接iCloud 。
所有應用程序都是多線程的,且通過(並不完善的)互聯網互相通信。綜上所述,Shayer 指出,測試這種複雜的軟件,必然成為一項更具挑戰性的工作。