Help us understand the problem. What is going on with this article?

Apple 的擠牙膏式更新

More than 3 years have passed since last update.

今天看到 Xcode 8.2 beta 的 release note

Xcode 8.2 is the last release that will support Swift 2.3. Please migrate your projects to Swift 2.3 code to Swift 3 syntax by opening the project and choosing Edit > Convert > To Current Swift Syntax.

讓我想到 Apple 對於促使開發者更新開發技術的做法。

有人跟我說過,
Apple 更新的手段很激烈,
當過了某個版本,就會強制妳不要用什麼東西

這個其實有一部分是不對的。

當 Apple 決心要推什麼東西的時候,
會很用力地堆
而且會很果斷的斷掉舊的做法

這點可以接受,我也樂於擁抱新東西和改變。

擠牙膏

為什麼說是擠牙膏呢?
來一些例子好了

去 C 化

目前還對 Swift 要去 C 化還有點印象,
就用這個來當例子吧。

Apple 的做法是會在前一個版本先開始提示你說:「我要把這個東西拿掉囉~!」
就把即將會 deprecate 的做法,先以 Warning 的方式呈現,

因為一般的開發團隊都會把 IDE 吐出的 Warning 數量盡量減到 0 ,
所以 Apple 也讓開發者們,可以先在這段時間先修改掉,
避免更新 SDK 的大版本造成的衝擊太大。

更新到 Swift 3

到 Xcode 8 的時候,
其實大家應該都知道從 2.x 到 3.x 的變化都很大。

於是 Apple 也先開放大家可以先用 Swift 2.3 ,
讓開發者們可以先用最小的 effort 讓自家產品可以先在 iOS 10 平台上開發,
先熟悉 iOS 10 的 SDK 後,再來轉換到 Swift 3.x ,
對線上的產品衝擊也會比較小。

強制更新

當然,
擠牙膏也有擠完的一天

當擠完的時候, Apple 當然就會要開發者強制更新了

所以說 Apple 無情好像也沒有那麼的無情?
人家都有提早說了 :coffee:

vc7
iOS Developer from 🇹🇼
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away