[2023/9/21 更新] Xcodeが対応しているSwiftのバージョン

アプリの動作環境や、対応OSバージョンに制限があるライブラリ(フレームワーク)等の要件から、時には古いバージョンのXcodeを使用せざるを得ない状況も生じます。

そうした旧バージョンのXcodeを利用する際、どのSwiftの言語バージョンに対応しているのか、気になったため調査を行いました。

目次

Swiftのバージョン互換性について

Swiftは4未満では破壊的なアップデートなどもあり、コード間に互換性がありませんでした。ABIの安定化も初期の頃はなかったので、異なったバージョンをターゲットにしたフレームワークを使用することが出来ないこともありました。

しかし、現在(記事執筆時点)では、状況は大きく変わりました。Swift 4以降では、異なる言語バージョンをターゲットとするフレームワークを組み合わせて利用することが可能になっています。

ただし、いくつかの機能については、古いバージョンのSwiftでは利用できません。

コンカレンシーについて

2022年9月19日、コンカレンシーに必要なバージョンはSwift 5.7ではなく、Swift 5.5でしたので修正しました。

コンカレンシーの利用には、Swift 5.5以降、および、コンカレンシーのタイプに対応したSwift標準ライブラリーが必要となります。そのため、アップルプラットフォームでは、デプロイメントターゲットの設定を以下の値以上にしなければ利用できません。

OS Deployment Target
iOS 13
macOS 10.15
tvOS 13
watchOS 6.0
Swiftコンカレンシーに対応したOSのバージョン

Xcodeの動作環境

Xcodeのバージョン別の動作環境については、次のページにまとめています。

Swift 5.x

Swift 5.xに対応しているXcodeのバージョンは次のようになっていました。

Swiftのバージョン Xcodeのバージョン
5.9Xcode 15
5.8.1Xcode 14.3.1
5.8Xcode 14.3
5.7 Xcode 14
5.6 Xcode 13.3
5.5 Xcode 13.0
5.4 Xcode 12.5
5.3 Xcode 12.0
5.2 Xcode 11.4
5.1 Xcode 11.2
5.0 Xcode 10.2
Swift 5.x に対応したXcodeのバージョン

Xcode 10.2が登場したのはmacOS Mojave 10.4の頃です。Swift 5.xが長い時間をかけて進歩して行っていることが実感できます。

Swift 4.x

Swift 4.xに対応しているXcodeのバージョンは次のようになっていました。

Swiftのバージョン Xcodeのバージョン
4.2 Xcode 10.0
4.1 Xcode 9.3
4.0 Xcode 9.0
Swift 4.x に対応したXcodeのバージョン

Swift 3.x

Swift 3.xに対応しているXcodeのバージョンは次のようになっていました。

Swiftのバージョン Xcodeのバージョン
3.1 Xcode 8.3
3.0 Xcode 8.0
Swift 3.x に対応したXcodeのバージョン

Swift 2.x

Swift 2.xに対応しているXcodeのバージョンは次のようになっていました。

Swiftのバージョン Xcodeのバージョン
2.2 Xcode 7.3
2.1 Xcode 7.1
2.0 Xcode 7.0
Swift 2.x に対応したXcodeのバージョン

Swift 1.x

Swift 1.xに対応しているXcodeのバージョンは次のようになっていました。

Swiftのバージョン Xcodeのバージョン
1.2 Xcode 6.3
1.1 Xcode 6.1.1
1.0 Xcode 6.0
Swift 1.x に対応したXcodeのバージョン

関連記事

著書紹介

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Akira Hayashi (林 晃)のアバター Akira Hayashi (林 晃) Representative(代表), Software Engineer(ソフトウェアエンジニア)

アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn

目次