Swift Digest
Blog | Swift.org Blog

Swift 5 リリース

Swift 5 Released!

このダイジェストはClaude Opus 4.7 / 4.8によって生成されたものです(License)。原文はこちら

この記事の要点

主な変更点

ABI 安定化とバイナリ互換性

Swift 5 で、Apple プラットフォーム上の ABI が安定(stable)であると宣言されました。これにより Swift ライブラリが今後のすべての macOS / iOS / tvOS / watchOS リリースに組み込まれます。アプリはこれらのライブラリを同梱する必要がなくなるため、ビルドがより簡単になり、アプリのサイズも小さくなります。

ABI 安定化の意味と、その先に向けた取り組みについては、次の解説記事も参照してください。

標準ライブラリの更新

標準ライブラリには次の新機能が加わりました。

このほか、Swift Evolution プロセスを経た次の標準ライブラリ関連 Proposal も実装されています。

言語・コンパイラの更新

Swift 5 では、メモリへの排他的アクセスの強制がデバッグビルドとリリースビルドの両方でデフォルト有効になりました。これにより同じメモリへの重複したアクセスが実行時に検出されます。詳細は Swift 5 の排他的アクセス強制 を参照してください。また Swift 5 は、Python・JavaScript・Ruby といった動的言語との相互運用を改善する dynamically callable 型をサポートします。

Swift Evolution プロセスを経た次の言語 Proposal も実装されています。

Package Manager の更新

Swift Package Manager にも多くの新機能が加わりました。

移行とドキュメント

Swift 5 は Swift 4 / 4.1 / 4.2 とソース互換です。Xcode 10.2 には多くのソース変更を自動処理できるコードマイグレータが含まれ、機械的でない変更を案内する移行ガイドも用意されています。Swift 5 に対応した『The Swift Programming Language』の更新版も Swift.org で公開され、Apple Books でも無料で入手できます。

Swift 利用者への影響

関連リンク