悟空网赚 发表于 2019-3-24 03:18:16

Swift 5将首选字符串编码改为UTF-8

  日前,Swift官方博客宣布,Swift 5的首选字符串编码将从此前的UTF-16切换到UTF-8,同时保留与Objective-C有效的互操作性。
  根据Swift官方的说法,由于String类型的会对这些底层问题进行抽象,所以开发者不需要对源代码进行更改。切换到 UTF-8 实现了 String 的长期目标之一 —— 实现高性能处理,这也是关注性能的开发者呼声最大的请求。
https://img.ithome.com/newsuploadfiles/2019/3/20190323091642_6385.jpg@wm_1,k_aW1nL3F3LnBuZw==,y_20,o_100,x_20,g_7|wm_1,k_aW1nL3FkLnBuZw==,y_20,o_100,x_20,g_7
  更重要的是,该功能还为将来提供更高性能的 API 奠定了基础。字符串的首选编码将会成为影响 Swift ABI 性能的一部分,因此这次在 Swift 5 版本中为了 ABI 的稳定性而实现该功能是势在必行的。
https://img.ithome.com/newsuploadfiles/2019/3/20190323_092120_392.jpg@wm_1,k_aW1nL3FkLnBuZw==,y_20,o_100,x_20,g_7
  在Swift 5之前,字符串内容以UTF-16和ASCII两种形式存储,出于与现代计算环境的高效兼容性、简化相关操作以及对性能提升的考虑,Swift 决定在 Swift 5 中使用 UTF-8 作为首选字符串编码。当然,目前来看这一变动对大多数开发者并没有特别大的影响,Swift官方依旧会提供与Objective-C API的高效互操作性。

页: [1]
查看完整版本: Swift 5将首选字符串编码改为UTF-8