Appleは米国時間9月20日、同社のプログラミング言語「Swift」の最新版である「Swift 5.5」をリリースしたと発表した。Swiftは「iOS」や「macOS」をはじめとするプラットフォーム上で動作するアプリを開発するための言語であり、オープンソース化されている。
同社は6月に開催した年次開発者会議「Worldwide Developers Conference」(WWDC)でSwift 5.5を発表し、非同期および並行処理でのプログラミングを可能にする「Swift Concurrency」の搭載や、パッケージ管理/配布機能の強化、標準ライブラリーパッケージのサポートなどの目玉機能を紹介していた。
特筆すべき変更点として、Appleの統合開発環境(IDE)である「Xcode」内の検索画面からパッケージを取り込めるようになるというものがある。この「package collections」(パッケージコレクション)と呼ばれる機能、すなわち選択パッケージのリスト機能により、特定用途向けのパッケージコレクションを容易に配布したり、消費できるようになる。また、Swift 5.5のパッケージマネージャーも、パッケージコレクションをサポートするようになっている。
Swiftプロジェクトは、 Swift 5.5について「大型のリリース」だとしている。
SwiftはAppleのハードウェアのみに向けた言語ではない。「Windows 10」のほか、AppleのArmベースの「Mac」、Linuxサーバー、AWSのサーバーレスプラットフォーム「Lambda」など向けのアプリ開発に利用できる。
またAppleは、インクリメンタルインポート機能によってSwift 5.5のパフォーマンスを大幅に向上させると約束していた。この機能により、インポートしているモジュールに変更が発生した際に、再コンパイルを必要とするファイルの数を削減できるようになる。これにより開発者は、ソフトウェアプロジェクトでモジュール形式のアプローチを採用しつつ、パフォーマンス上の障壁を低減できるようになる。
さらに、Objective-C言語とのコンカレント(並行)な相互運用性の実現という目玉機能もある。これにより、Swiftのasync(非同期)関数からObjective-Cを用いるといった並行処理が可能になる。
Swiftのコントリビューターは、「これは、既存の豊富な非同期のObjective-CのAPIをSwiftのコンカレントなモデルですぐに利用できるようにすることを目的としている」と説明している。
また、Swift 5.5ではメモリー管理の機能が大幅に強化されており、「Xcode 13」での変更によりSwiftプログラムはより高速にメモリーを再利用できるようになるという。Automatic Reference Counting(ARC)は、Swiftのコンパイラーを利用し、必要のないときにメモリーを自動的に解放する。
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。