2017年12月01日

WWDC17 | Session 402 | What's New in Swift

59:29
https://developer.apple.com/videos/play/wwdc2017/402/

Swift4の更新情報

□アクセス制御

private
extension からのアクセス不可なので fileprivate を使う。(Swift3)。
→ SE-0169: Improve Interaction Between Private Declarations and Extensions
Swift4 は、privateのままで使える。

SE-0156: Class and Subtype Existentials

□Cocoa Idioms

下記など。紹介は省略し、別セッション(202 What's New in Foundation)で解説。

KeyPaths, Archival & Serialization, Encoder
SE-0161 Smart KeyPaths: Better Key-Value Coding for Swift SE-0166 Swift Archival & Serialization
SE-0167 Swift Encoders

□ソース互換性

Swift 3.2のソースをSwift4 でほとんどそのままコンパイル可能
移行ツールあり
ひとつのプロジェクトでターゲットごとに3.2/4 の切り替え可能
Package Support Swift Versionを記述

□ビルドの高速化、バイナリの効率化

New Build Systemを選択可能
Precompiled Header
Shared Build
Indexing While Building
COW Existential Buffers = COW(copy-on-write)
Faster Generic Code
Smaller Binaries
Unused Conformance Removal
@objc inference


□String

Unicode合成文字の比較
charactersカウンティング
charactesのコレクションをString自身がもつ
Owner Reference Count (Substring
String(_:Substring) copies the buffer
複数行文字列 = """

□New Generics

associatedtype
subscripts partioal range

□Standard Library の新機能

多数。詳細説明なし。

□Exclusive Access to memory

Ownership

ラベル:WWDC17 Swift String
posted by 永遠製作所 at 11:54| 東京 🌁| Comment(0) | WWDC | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

※ブログオーナーが承認したコメントのみ表示されます。