Swift 2.2 新特性前瞻

根據(jù)蘋果的公開信息,Swift2.2將于今年春季發(fā)布我注,3.0將于今年年末發(fā)布停士。在蘋果開源了swift的同時(shí),也把開發(fā)計(jì)劃開源了出來:swift-evolution瞒窒。
根據(jù)文檔描述捺僻,2.2主要是bug修復(fù),性能提升崇裁,在不影響原先代碼使用的一些小改進(jìn)匕坯。預(yù)計(jì)年底發(fā)布的3.0將會是一個大的改動(包括一些常見api的重命名),也將在2.2中提前給出一些提示拔稳,好讓開發(fā)者盡早開始遷移代碼葛峻。
現(xiàn)在我整理一下文檔中一些明確的2.2中將會有的變化。

允許更多的關(guān)鍵字用做參數(shù)名

好的參數(shù)名對于提高代碼可讀性很重要巴比。在swift中很多關(guān)鍵字比如<code>in,repeat,defer</code>都不能用做參數(shù)名术奖。



2.2中礁遵,除了少數(shù)修飾參數(shù)的關(guān)鍵字外都將允許用作參數(shù)名。

為Tuples增加對比操作符

當(dāng)前采记,Tuples的數(shù)據(jù)不能使用==操作符:



2.2中將支持Tuples

關(guān)聯(lián)已存在類型時(shí)佣耐,不再使用typealias

typealias現(xiàn)在有兩個用處:

  • 為一個已經(jīng)存在的類型取個別名
  • 在協(xié)議中作為一個類型的占位名稱

代碼如下:



這是兩種完全不同的用法,不應(yīng)該用一樣的關(guān)鍵字唧龄。
2.2中將第一種情況時(shí)兼砖,啟用新的關(guān)鍵字<code>associatedtype</code>

函數(shù)簽名將包括參數(shù)名

一個函數(shù)有相同的函數(shù)名,參數(shù)名不同有多個重載很常見既棺。當(dāng)有多個重載時(shí)讽挟,在調(diào)用時(shí)能夠通過參數(shù)名來區(qū)別。但是在獲取類型時(shí)丸冕,卻不包括參數(shù)名耽梅。
舉例UIView中有這么幾個方法:


使用時(shí)可以通過參數(shù)名區(qū)分:


但是這樣使用時(shí)卻會報(bào)錯:
<pre><code>let fn = someView.insertSubview // ambiguous: could be any of the three methods</code></pre>
2.2中將會解決這個問題

一個新的方法生成selector

現(xiàn)在為了生成OC下使用的selector只能使用字符串生成,沒有類型檢查晨仑,很容易造成失誤褐墅。
將提供一個#selector()方法生成selector,如下:
<pre><code>let sel = #selector(UIView.insertSubview(_:at:)) // produces the Selector "insertSubview:atIndex:"
</code></pre>

增加#if swift 語法判斷當(dāng)前swift版本

使用如下:


歡迎關(guān)注我的微博:@沒故事的卓同學(xué)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末洪己,一起剝皮案震驚了整個濱河市妥凳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌答捕,老刑警劉巖逝钥,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異拱镐,居然都是意外死亡艘款,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進(jìn)店門沃琅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哗咆,“玉大人,你說我怎么就攤上這事益眉∩渭恚” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵郭脂,是天一觀的道長年碘。 經(jīng)常有香客問我,道長展鸡,這世上最難降的妖魔是什么屿衅? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮莹弊,結(jié)果婚禮上涤久,老公的妹妹穿的比我還像新娘涡尘。我一直安慰自己,他們只是感情好响迂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布悟衩。 她就那樣靜靜地躺著,像睡著了一般栓拜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惠昔,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天幕与,我揣著相機(jī)與錄音,去河邊找鬼镇防。 笑死啦鸣,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的来氧。 我是一名探鬼主播诫给,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼啦扬!你這毒婦竟也來了中狂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤扑毡,失蹤者是張志新(化名)和其女友劉穎胃榕,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瞄摊,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡勋又,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了换帜。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片楔壤。...
    茶點(diǎn)故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖惯驼,靈堂內(nèi)的尸體忽然破棺而出蹲嚣,到底是詐尸還是另有隱情,我是刑警寧澤跳座,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布端铛,位于F島的核電站,受9級特大地震影響疲眷,放射性物質(zhì)發(fā)生泄漏禾蚕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一狂丝、第九天 我趴在偏房一處隱蔽的房頂上張望换淆。 院中可真熱鬧哗总,春花似錦、人聲如沸倍试。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽县习。三九已至涮母,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間躁愿,已是汗流浹背叛本。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留彤钟,地道東北人来候。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像逸雹,于是被迫代替她去往敵國和親营搅。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 作者:walkingway Swift 2.2 隨著 iOS 9.3 一同閃亮登場梆砸,相較于 Swift 2.1转质, ...
    梁杰_numbbbbb閱讀 1,003評論 0 3
  • 問題 1)柯里化,通過柯里化辫樱,改造target-action峭拘,因?yàn)閟elector只能使用字符串,在編譯時(shí)無法發(fā)現(xiàn)...
    lanjing閱讀 3,504評論 3 19
  • Hello Word 在屏幕上打印“Hello, world”狮暑,可以用一行代碼實(shí)現(xiàn): 你不需要為了輸入輸出或者字符...
    restkuan閱讀 3,175評論 0 6
  • 關(guān)于 Swift 重要這個文檔所包含的準(zhǔn)備信息, 是關(guān)于開發(fā)的 API 和技術(shù)的鸡挠。這個信息可能會改變, 根據(jù)這個文...
    無灃閱讀 4,301評論 1 27
  • 1.允許更多的關(guān)鍵字用做參數(shù)名 好的參數(shù)名對于提高代碼可讀性很重要。在swift中很多關(guān)鍵字比如in,repeat...
    Baby小豬閱讀 306評論 0 0