●1つのコードで、様々なデバイス向けのアプリを出し分けられる可能性
さて、昨年のWWDC18で、iPadアプリをMac向けにビルドできる計画が明らかになり、WWDC19でこれに「Project Catalyst」という名前がつきました。
簡単に言えば、処理のコードは共通化し、タッチ前提で全画面表示が基本のiPadと、マウス前提でアプリをウインドウ表示するMacで、UI部分を作り替えてアプリをビルドすることができるようにする仕組みです。
これは昨年先行して登場していますが、よくよく紐解いてみれば、Swiftで書かれたアプリとSwiftUIを組み合わせることで、よりシンプルにProject Catalystでのアプリ制作を実現できると同時に、なにもiPadとMacの間だけでアプリのコードが共有されるわけでもなさそうだという印象を持ちました。
その恩恵は、Apple Watchアプリで最大化するのではないか、と思いました。
今回Apple Watchのアプリは、iPhoneアプリと分離され、新たに用意されたWatchアプリ向けApp Storeを通じて、Apple Watch単体でダウンロードすることができるようになりました。これからWatchアプリ自体がどんどん増えていって欲しい、という願いが込められているわけですが、これとSwiftUIも無関係ではなさそうです。