Swift Playgroundsは、プログラミングを学習する人が触れるアプリだ。その対象には子どもも含まれるため、位置情報や連絡先などのプライバシーに関わる機能は制限されている。しかし、それ以外は、iOSに用意されているすべての機能を使えるのだ。
もし基調講演で発表していたら喝采を浴びていただろう、という理由はそこにある。iOS 11と組み合わせられるSwift Playgrounds 2は、iOS 11の目玉機能であるARKitと、CoreMLもサポートするのだ。つまり、拡張現実のアプリや、機械学習を用いたアプリを、iPadだけで組み立てられるようになるということだ。
ARKitでは、iPadのカメラを用いるだけで、平面を認識して、そこにオブジェクトを配置できるサンプルプログラムが配置されている。いままで、画面の中で描画したり動かしてきたキャラクターを、カメラを通じて、実際の教室の机の上で歩かせることもできるようになるだろう。
物体のトラッキングやサイズ測定、光源を用意して影を作り出す、といった処理もARKitはサポートする。これらの機能をライセンス料なしで使えることは、新しいデジタルの表現に触れる非常に良い機会になる。
またCoreMLも魅力的だ。CoreMLは汎用的な機械学習モデルを利用できるが、マシンビジョン(Vision)と自然言語処理(Natural Language Processiong)については、あらかじめ用意されたフレームワークを活用できる。
Visionでは、顔のトラッキング、顔面認識、ランドマーク認識、文字認識、矩形認識、バーコード認識、物体追跡、画像登録といった機能を利用できる。またNatural Language Processiongでは、入力もしくは手書きされた文字、声から、言語や固有名詞などを抽出したり、情報からテキストや声などの自然言語を返すことができる。
非常に簡単な例だが、Visionフレームワークを使ってカメラで文字を認識し、これをNatural Language Processiongフレームワークに渡して、翻訳して意味を表示する、といったアプリを、Swift Playgroundsの中で実現することもできるのだ。
教室の中の実装例では、例えば、クラスメイトにカメラを向けると名前などの情報を表示する、といったアプリも実装できることになる。
Appleのソフトウェア開発を指揮する上級副社長、クレイグ・フェデリギ氏にSwiftに関してインタビューを行った際、プログラミングを学習しやすくするための言語であることを強調していた。
「Swiftのコンセプトには、実際のエンジニアがアプリ開発で利用する言語で、非常に高速かつパワフルな機能性を追求することを重視しています。同時に、これからプログラミングを学習するこどもや学生にとって、簡単に素早く学ぶことができ、またその知識が将来無駄にならないことを目指してきました」(フェデリギ氏)
Appleはあくまで、アプリ開発はXcode、Swift Playgroundsはプログラミング学習という棲み分けをしている。そのため、iPadだけでiPadアプリを開発できるようにする将来の姿は、用意していないと強調する。
しかしSwiftというプログラミング言語の共通点を持たせることが重要だと指摘する。
Swiftでプログラミングに触れて入門し、Swiftが書ける人口を増やすことで、iPhoneやiPadの発展を支える優れたアプリ開発者やアイデアを、Appleのエコシステムの中に先行して囲い込めるからだ。
学習者からすれば、確かにブロックでコードを組み立てる学習環境は身近で手軽だが、学習が進んでいくと実際のコーディングへの移行、というギャップに直面することになる。
Appleは、はじめからプロのコードを扱う点を強調し、スムーズに学習を進めていける点がSwift Playgroundsの強みだとしている。
Appleのスマートホーム戦略--HomePodを入り口にCNET Japanの記事を毎朝メールでまとめ読み(無料)
パナソニックのV2H蓄電システムで創る
エコなのに快適な未来の住宅環境
企業や自治体、教育機関で再び注目を集める
身近なメタバース活用を実現する
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
OMO戦略や小売DXの実現へ
顧客満足度を高めるデータ活用5つの打ち手