iPadでiPhone/iPadアプリが作れる「Swift Playgrounds」
最後のご紹介はiPadに関するアップデートで、「Swift Playgrounds」についてです。
今まで、Apple製品のアプリを開発するにはmacOSにインストールされているXcodeを用いることが主流であり、他の端末で実装を行うことは困難でした。今回ここに大きなアップデートが入り、既存の「Swift Playgrounds」というiPadアプリにアプリ開発のための機能が搭載されました。
Swift Playgroundsは、macOS / iPadOS向けに提供されている主にプログラミング学習を目的としたアプリですが、最新のiPadアプリでは実際にAppStoreで配布するためのアプリ開発まで行えるようになっています。
アプリの作成と配布
アプリケーションはSwiftUIで作成します。コードの自動補完やプレビュー表示などの機能も搭載されているので、とても快適にコーディングを行うことが可能になっています。初学者向けにドキュメントやガイドへのアクセスもしやすくなっているため、気軽にアプリケーションを作成することができるでしょう。通信処理やデータの永続化の実装などもPlaygrounds上で実装することができるので、本格的なアプリを作ることにも挑戦できます。また、ここで作成したアプリはXcodeに引き継いで開発することも可能です。
Swift Playgroundsで作成したアプリは作って終わりではなく、AppStoreへの審査提出もそのまま行うことができます。そのため、アプリ公開における全工程をiPad端末だけで完結することができるようになっています。
また、画像などのリソースファイルの追加やSPMで提供されているライブラリの導入も可能で、プロジェクト設定などは必要最小限にとどめられているので、初心者が楽しくアプリを作っていける環境が十分に提供されています。
このように大きく進化したSwift Playgroundsですが、現状まだできないことも沢山あります。
例えば、プレビュー表示はリアルタイムに更新されてとても使いやすいものになっていますが、Xcode側では提供されている「Viewごとのプレビュー表示機能」や「任意のパラメーターを受け渡した表示機能」などは対応されていませんでした。ソースコード管理については、iCloudを用いて端末間でファイルのやり取りをすることはできるものの、Gitなどによるバージョン管理はiPad端末側で行うことはできませんでした。また、テストコードの追加ができなかったり、ブレイクポイントを貼ったデバッグなどにも対応していなかったりするので、より本格的なアプリ開発をするには十分とは言えないでしょう。このアプリは、あくまで「初学者が楽しくアプリ開発をするためのもの」として提供されている印象を受けました。
おわりに
以上が、昨年度のWWDCで発表されたiOS / iPadOS関連のアップデートでした。
このように、WWDCでは毎年沢山の機能が発表されます。アプリ提供者側はただ何もせず待っているだけでは既存のアプリの進化が止まってしまうため、発表された新技術をそれぞれのアプリに随時組み込んでいくことが求められます。そのため、このイベントのキャッチアップは開発者にとって毎年必須のものとなっています。
一方、基調講演となるKeynoteに関しては専門的な用語も比較的少なく、開発者でない人にとってもAppleの最新技術を知ることができる楽しい内容となっています。もし専門の技術者ではないので細かい内容はわからないという方がいれば、2022年度のWWDC開催時には一度試聴してみるのはいかがでしょうか。
参考資料
- Keynote - WWDC21 - Videos - Apple Developer
- Platforms State of the Union - WWDC21 - Videos - Apple Developer
- Meet Group Activities - WWDC21 - Videos - Apple Developer
- Coordinate media experiences with Group Activities - WWDC21 - Videos - Apple Developer
- Supporting Coordinated Media Playback | Apple Developer Documentation
- Implementing Communication Notifications | Apple Developer Documentation
- Meet Safari Web Extensions on iOS - WWDC21 - Videos - Apple Developer
- Explore Safari Web Extension improvements - WWDC21 - Videos - Apple Developer
- Meet Safari Web Extensions - WWDC20 - Videos - Apple Developer
- Adopting New Safari Web Extension APIs | Apple Developer Documentation