Swift3.0將提高擴展性,支持更多的平臺

jopen 8年前發布 | 7K 次閱讀 Swift

蘋果的Swift語言3.0版本將預計在今年年底之前發布。這個版本的主要目的是提供更加其語言本身和標準庫穩定的字節碼接口。為了達到這一目的,新版本的Swift也會致力于提高語言的統一性,采用更加標準的實現。其中有些重構可能不得不涉及到打破Swift 2.X原有的設計。新版本帶來的改變主要集中于以下幾個方面:

  • 更穩定的ABI: 提高字節碼接口(ABI)的穩定性,從而提高字節碼的向后兼容性。這可能涉及到運行時的數據接口,命名規范,調用慣例等等,甚至語言本身的一些特性。重構ABI同時也會擴展標準庫,包括它們的數據類型和核心算法等等。成功的ABI意味著,使用未來版本Swift編譯的應用和庫依然可以兼容現在的程序,即使他們是使用舊的3.0版本的源代碼。
  • 適用性: 解決 二進制接口問題 ——如果程序依賴的某個庫發生了改變,必須重新編譯整個程序。比如,添加了一個新的屬性、覆蓋了一個類的方法,并不需要重新編譯和這個類有關的所有子類。這個問題帶來一些必須思考的其他問題,比如:什么改變可以動態適應?這些可以使用的類庫是如何實現的?如何保持高性能?
  • 擴展性: 使得Swift支持的平臺更多,確保用戶可以使用Swift寫出兼容性高的代碼。期望能在所有平臺上運行。
  • 類型系統重構和文檔: 重構多種類型,更新文檔。同時也涉及到類型系統的轉換規則和編譯器的類型檢查的實現。主要目的是使類型系統更小、更簡單,使規則更加嚴格,某種意義上就像一個類型檢查一樣。
  • 完善泛型: 現在很多Swift很多的庫都使用了泛型,特別是標準庫。然而,現在的Swift還有很多泛型的特性沒有實現,包括遞歸協議約束、使當前的約束擴展遵循一個新的規則等等。但是Swift 3.0支持標準庫需要的這些泛型特性,因為這影響到標準庫的ABI。更多有關泛型的信息,可以閱讀 Douglas Gregor有關完善泛型的報告
  • 注重語言本身: 作為一個年輕的編程語言,Swift的發展非常迅猛。但是畢竟時間倉促,這門語言還有很多不合適的特性。Swift 3將會優化和刪除一些特性,以提高更多的統一性。
  • **API設計指南:**Swift重要的庫是如何用的,就和Swift語言的代碼是如何寫的息息相關。 API設計指南 提供了優秀的API設計指導。Swift 3的標準庫和核心庫將會更新以適應指南。

來自: http://geek.csdn.net/news/detail/72921

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!