swift 3 -4 的移植相比較swift 2.2 -3來說容易一些
原有API變化不太大,主要體現(xiàn)在API的新增上(歸檔,實現(xiàn)codable協(xié)議就可以使該類型支持編碼和解碼)
OC 和swift區(qū)別
- 優(yōu)勢
1、Swift容易閱讀,語法和文件結(jié)構(gòu)簡易化。
2、Swift更易于維護,文件分離后結(jié)構(gòu)更清晰。
3、Swift更加安全,它是類型安全的語言。
4、Swift代碼更少,簡潔的語法,可以省去大量冗余代碼
5、Swift速度更快,運算性能更高。
- 劣勢
1、版本不穩(wěn)
2、使用人數(shù)比例偏低,目前還是OC的天下
3、社區(qū)的開源項目偏少,畢竟OC獨大好多年,很多優(yōu)秀的類庫都不支持Swift,不過這種狀況正在改變,現(xiàn)在有好多優(yōu)秀的Swift的開源類庫了
4、公司使用的比例不高,很多公司以穩(wěn)為主,還是在使用OC開發(fā),很少一些在進行混合開發(fā),更少一些是純Swift開發(fā)。
5、偶爾開發(fā)中遇到的一些問題,很難查找到相關(guān)資料,這是一個弊端。
6、純Swift的運行時和OC有本質(zhì)區(qū)別,一些OC中運行時的強大功能,在純Swift中變無效了。
7、對于不支持Swift的一些第三方類庫,如果非得使用,只能混合編程,利用橋接文件實現(xiàn)。
聯(lián)系
1.共用一套運行時環(huán)境
2.互相引用混合編程
3.絕大多數(shù)概念,比如引用計數(shù)、ARC、屬性、協(xié)議、接口、初始化、擴展類、命名參數(shù)、匿名函數(shù)等還是繼續(xù)通用現(xiàn)階段Swift 到底能不能取代 Objective-C?
其實到現(xiàn)在為止 Swift 離完全替代 Objective-C 還是有一定距離,因為 Apple 內(nèi)部一直在用 Objective-C 來做一些 Framework 的開發(fā),底層也不可能用 Swift 實現(xiàn),所以現(xiàn)在更多的替代是體現(xiàn)在外部開發(fā)。