Apple の Project Catalyst は、iOS アプリを移行することで開発者が macOS Catalina 向けのソフトウェアを作成するのに役立ちます。WWDC 後の発表と最初の提供開始から 1 か月後のディスカッションでは、開発者はいくつかの課題はあるものの、このエクスペリエンスに満足しているようです。一方、Apple は、iOS App Store のレビューと同様に、開発者が世論に左右されて macOS アプリのバリアントを改良していくことを示唆しています。
より多くのiOSアプリをmacOSに移行するためのソリューションとしてProject Marzipanから改名されたProject Catalystは、WWDCで発表され、開発者にアプリをmacOSへ可能な限り迅速かつ容易に移行するためのツールを提供しました。指の代わりにマウスカーソルを使用するなど、タッチスクリーンからデスクトップへの変換における様々なタスクを処理することで開発者の開発を有利に進めるCatalystは、単なるワンタッチソリューションではなく、macOS向けにアプリを改良するための出発点となります。
Ars-TechnicaがAppleのスタッフに話を聞いたところ、Appleは、現在のiOS版App Storeと同様に、開発者が消費者のアプリの好き嫌いに影響を受けると考えていることが明らかになった。同社は既に、透過性やステータスバーの考慮など、開発者が従うべきガイドラインやベストプラクティスを数多く提供しているが、アプリの将来的な方向性を最終的に決定するのは世論である。
Appleのパートナー管理および開発者リレーション担当シニアディレクター、シャーン・プルーデン氏は、レビューと評価が「開発者にとって正しい行動、つまり、仕事をきちんと行い、怠けずに済むように促してくれることを期待している」と述べている。プルーデン氏のコメントは、開発者が単なる移植ではなく、Appleが提供するすべての要素を活用し、macOSユーザーにとって適切に動作するアプリを作るために時間と労力を費やしているかどうかに関するものだ。
AppleのmacOS担当シニアマーケティングディレクター、トッド・ベンジャミン氏は、「開発者たちはすでに、競争の激しいiOS App Storeで世論の批判を乗り越えてきた。そこには多くの選択肢があり、開発者たちは最小限の作業で成功したわけではない」と付け加えた。
今後、macOSアプリの流入が急増すると、デスクトップアプリと同等の機能を備えたフル機能のアプリが減少するのではないかと懸念するユーザーもいるかもしれません。モバイルアプリはデスクトップアプリに比べて、一般的に提供されるスキルや機能の範囲が狭いと考えられているためです。移植プロセスを簡素化することで、開発者が既存のmacOSネイティブフレームワークではなく、iOS向けに開発を行うようになるのではないかと懸念されています。
Appleは、UIKitは開発者にAppKitへのアクセスをある程度提供しているため、これは人々が考えるほど大きな問題にはならないだろうと示唆している。「UIKitアプリをMacに移植すると、例えばツールバーやタッチバー、メニューなどを使う際にAppKitを大いに活用します。これらはすべてAppKitです」と、Apple Cocoaエンジニアリングマネージャーのアリ・オザー氏は述べた。「そのため、開発者はAppKitを直接使用する必要はありませんが、そのコンテキストにおいてUIKitアプリ内でAppKitを使用していることになります。」
それでも、Appleは、macOSのあらゆるアクセスと機能を必要とするアプリにはAppKitが最適な選択肢となる可能性があると同意しました。Catalystは開発者に一つの選択肢を提供していますが、それを使用するかAppKitを使い続けるかはソフトウェア開発者の判断に委ねられています。
Catalystの初期段階から開発に携わってきた開発者たちは、このプロジェクトに将来性があると示唆しているようだ。Twitterの従業員にアプリについて話を聞いたところ、彼らはCatalystのおかげで既存のコードベースを活用し、Twitterクライアントのバリエーションの増加に伴うサポートを最小限に抑えることができたと称賛した。
Twitterのシニアスタッフエンジニアであるノーラン・オブライエン氏は、「プロジェクト・カタリストで我々が興奮したのは、既存のiOSコードベースの大部分がそのまま機能するという驚くべき事実だった」と述べたが、コード内のチェックボックスをチェックするほど簡単ではなかったと付け加えた。
AppKit と比較したマルチウィンドウ サポート機能の違いや、アプリがバックグラウンドになったり最小化されたりしたときにデータベースの永続性などの要素に影響するイベントが不足しているなど、扱いにくい要素がいくつかありました。
「アスファルト9:Legends」の開発元であるGameloft Barcelonaは、このプロセスが非常にシンプルであることに気付き、「新しいXcodeで現在のiOSプロジェクトを開き、新しいmacOSターゲットオプションをマークしてコンパイルする」と説明しました。ただし、ライブラリがモバイル以外のデバイスでサポートされていなかったため、最初の試みではうまくいかなかったことを認めています。コードを変更した後、わずか24時間以内に、コードベース全体を使用して完全にコンパイルされたゲームのバージョンを作成しました。
モバイルからデスクトップへの移行にもかかわらず、グラフィック処理の変更は容易でした。作業の大部分は、より高性能なMacで高解像度に対応できるようシェーダーの精度を調整することでした。Metalバッファ管理の機能にも変更がありましたが、「厳密に必要」というわけではありませんでした。これにより、チームは高いフレームレートを維持しながら、iOS版にはないエフェクトをゲームに追加することができました。
注目すべき重要な課題は、ユーザー インターフェースをより大きなディスプレイに適応させることでした。「モバイルで機能するものが、必ずしもデスクトップで機能する必要はない」からです。