今週、AppleのSwiftプログラミング言語チームは、Xcode 10.2で使用できるバージョン5をリリースしました。これにより、ABIの安定性(Swiftコンパイラの将来のバージョンでコンパイルされたコードとの互換性)というマイルストーンが達成され、開発者向けの新しいコーディング機能が導入されました。Swiftという言語は、学生がコード開発を習得可能なスキルにするというAppleの取り組みと並行して成熟しつつあります。
新リリースの主な特徴は、Appleプラットフォーム(macOS、iOS、watchOS、tvOS)間でのアプリケーションバイナリインターフェースの安定性です。これは、Swiftが言語として成熟し、コンパイラの動作に大きな変更が加えられても、既にバイナリにコンパイルされているSwiftアプリやライブラリとの互換性が損なわれることがなくなることを意味します。
その結果、Swift 5のABIの安定性により、現在のコンパイラでコンパイルされたアプリコードは、将来のバージョンのSwiftでコンパイルされた動的リンクライブラリで確実に動作させるために再コンパイルする必要がなくなります。つまり、アプリは使用する標準ライブラリの既知のバージョンをバンドルする必要がなくなり、OSが提供する更新バージョンをそのまま使用できるようになります。これは、Objective Cで書かれたアプリで既に実現されています。
これにより、App StoreとTestFlightを使用した社内導入テストの両方で、Swiftアプリのダウンロードサイズを縮小できます。Swift 5の主要機能は、AppleのSwift開発責任者であるTed Kremenek氏が、John Sundell氏のポッドキャスト 「Swift by Sundell」で既に紹介しています。
— ジョン・サンデル(@johnsundell)2019年3月25日Swift 5 が正式にリリースされました!
含む...
ABIの安定性
#"Raw strings"#
結果
"カスタム \(文字列: 補間)"
dynamicCallable
flattened = try? optionals()完全なリリースノート: https://t.co/lro3JBqsU9
新しいSwift 5では、Sundell氏がツイート(上記)で概説し、Appleの公式リリースノートにも詳細が記載されている一連のコーディング機能が搭載されています。その中には、生のテキストをサポートするために拡張された区切り文字を使用して文字列リテラルを表現できる機能も含まれます。これにより、引用符やバックスラッシュをエスケープする必要がなくなり、コードが明確になります。
AppleのSwiftの10年
クリス・ラトナーは2010年7月にAppleでSwiftの開発を開始しましたが、Swiftが初めて一般公開されたのはAppleの2014年世界開発者会議(WWDC)でした。2015年末までに、Appleは新言語のバージョン2.2をApache License 2.0に基づくオープンソースソフトウェアとしてリリースし、Linuxをはじめとするプラットフォームでの利用を可能にしました。
ラトナー氏は、2017年1月にテッド・クレメネック氏に正式に権限を委譲する前に、最初の3つのメジャーバージョンで言語の急速かつ重要な変更を監督しました。当時、ラトナー氏はクレメネック氏が「長年にわたりSwift(およびClang、Clang Static Analyzer)を支えてきた静かで素晴らしい立役者の一人」であると述べました。
クレメネック氏は2007年からAppleに勤務し、最終的にXcodeに搭載されたClang Static Analyzerの主任設計者兼オリジナルエンジニアを務めました。2009年から2013年にかけては、LLVMフロントエンドチームに所属していました。2017年からはAppleの言語およびランタイム担当シニアマネージャーを務め、Swift、Objective-C、C、C++向けのAppleコンパイラにおけるプログラミング言語サポートの実装を担当しています。
分析会社 RedMonk によると、昨年、Swift の採用は GitHub と Stack Overflow の開発者の間で使用されているプログラミング言語のトップ 10 で Objective C と並ぶほど増加したという。
Swiftを習得しやすい言語として主流にする
AppleはSwiftの普及をただ見ているだけではありません。同社は2016年にEveryone Can Codeイニシアチブを立ち上げ、人々が独自のアプリを開発する能力を身につけ、また「テクノロジーの言語」の使い方を他の人に教えることができるよう、このイニシアチブを定期的に拡大してきました。Swiftは「入門に最適」かつ「非常に強力」であると位置づけられています。
同社は1年前、シカゴ公立学校およびノースウェスタン大学と提携し、レーン・テック・カレッジ・プレップ高校に「Center for Excellence」を設立すると発表しました。これは、Swiftを今日の開発者の間で人気の言語にするだけでなく、次世代のプログラマーにもリーチするという、同社の進行中の計画の野心的な拡大です。
Swift PlaygroundsはAppleがコード開発を教えるために設計した。
シカゴ校は現在、Appleの「Swiftを使ったアプリケーション開発」と「誰でもコードが書ける」コースを受講する高校教師のための教育・学習拠点として機能しており、これらのコースは地域の約50万人の生徒にSwiftプログラミングを習得させることを目的としています。Appleのコーディング・リテラシー・プログラムは、IBM、マクドナルド、ラッシュ大学メディカルセンターなど、地域の大企業からも支援を受けています。
アップルの最高経営責任者(CEO)ティム・クック氏は当時、「私たちはすべての生徒がプログラミングを学ぶ機会を持つべきだと信じており、シカゴ地域の教師がプログラミングを授業に取り入れられるよう、新たな学習機会を提供できることを大変嬉しく思っています」と述べた。
同社はまた、アクセシビリティ技術における自社の取り組みを活用し、VoiceOver とスイッチ コントロールを通じて、視覚、聴覚、または身体運動に障害のある学生に Everyone Can Code コースを提供しています。これにより、スイッチ、ジョイスティック、その他の適応型デバイスを使用して画面上のものを制御できます。
アクセシブルな Swift コースは、昨年秋に、カリフォルニア盲学校、ニューヨークのカリフォルニア聾学校第 75 学区、フロリダ聾学校および盲学校、ハドレー盲視覚障害者協会、パーキンス盲学校、テキサス盲視覚障害者学校、テキサス聾学校で開始されました。
現在、テキサス州オースティン・コミュニティ・カレッジやノースイースト・ミシシッピ・コミュニティ・カレッジなど、米国の30以上のコミュニティ・カレッジがSwiftを使ったアプリ開発コースを提供しています。一部の高校でもAppleのSwift開発コースを導入しています。
プリンス氏が設立し、カリフォルニア州オークランドに拠点を置く組織「ドリーム・コープ」は、2月にAppleと提携し、Appleのプログラミング言語Swiftの教育に重点を置いた教育および人材育成の機会を拡大しました。このプログラムは、中学生、大学生、そしてそれ以上の年齢層を広く対象とし、マイノリティのバックグラウンドを持つ人々が、市場参入や起業に必要な職業スキルを身に付けることを目的としています。
Appleはまた、オーストラリアのRMIT大学、英国のハーロウ・カレッジとプリマス大学、デンマークのマーカンテック職業大学、オランダのナイメーヘン高等学校、パリとリヨンのシンプロン職業学校、およびオーストリア、ベルギー、チェコ共和国、ドイツ、イタリア、スペイン、スウェーデン、ノルウェー、アイルランド、ルクセンブルク、ポーランド、ポルトガルのその他の教育パートナーなど、米国外の70以上の学校にEveryone Can Codeを導入する計画も発表した。
同社はまた、インドでアプリアクセラレーターを運営しているほか、イタリアにフェデリコ2世ナポリ大学と提携して「開発者アカデミー」を設立し、自社のプラットフォーム向けアプリを開発できる人材の育成を世界規模で推進していることを強調している。