swift和OC的主要區(qū)別:
1.swift是靜態(tài)語言桐玻,有類型推斷,OC是動態(tài)語言荆萤。
2.swift面向協(xié)議編程镊靴,OC面向?qū)ο缶幊?/p>
3.swift注重值類型,OC注重引用類型链韭。
4.swift支持泛型偏竟,OC只支持輕量泛型
5.swift支持靜態(tài)派發(fā)(效率高)、動態(tài)派發(fā)(函數(shù)表派發(fā)敞峭、消息派發(fā))方式踊谋,OC支持動態(tài)派發(fā)(消息派發(fā))方式。
6.swift支持函數(shù)式編程
7.swift的協(xié)議不僅可以被類實現(xiàn)旋讹,也可以被struct和enum實現(xiàn)
8.swift有元組類型殖蚕、支持運(yùn)算符重載
9.swift支持命名空間
10.swift支持默認(rèn)參數(shù)
11.swift比oc代碼更加簡潔
12.值類型優(yōu)化:如寫時拷貝