更新時間:2016年03月02日17時05分 來源:傳智播客 瀏覽次數:
Swift正在完成一個驚人的壯舉,它正在改變我們在蘋果設備上編程的方式,引入了很多現代范例,例如:函數式編程和相比于OC這種純面向對象語言更豐富的類型檢查。
Swift語言希望通過采用安全的編程模式去幫助開發(fā)者避免bug。然而這也會不可避免的產生一些人造的陷阱,他們會在編譯器不報錯的情況下引入一些Bug。這些陷阱有的已經在Swift book中提到,有一些還沒有。
總結:
一、在協(xié)議擴展中重寫協(xié)議中的屬性時要仔細核對;
二、在協(xié)議擴展中定義的每一個屬性,需要在協(xié)議中進行聲明;
三、不要對導入的第三方協(xié)議進行屬性擴展,那樣可能需要動態(tài)調度;
四、如果一個新的屬性需要動態(tài)調度,避免使用約束性協(xié)議擴展;
五、避免把一個有副作用的表達式的結果通過可選鏈賦值給等號左邊的變量;
六、避免在閉包中使用inout參數;
七、避免在柯里化函數中使用inout參數,因為如果你后來將柯里化改為顯式的創(chuàng)建閉包,這段代碼就會產生錯誤。