macOS Pathway
ビデオ、ドキュメント、ツールをまとめた使いやすいコレクションを活用して、優れたアプリやゲームを構築しましょう。
macOSについて
驚異的なパフォーマンスとプライバシー機能を備えたアプリを作成できます。スピードとパワーという魅力を持つMacでは、macOSによりアプリは最高のパフォーマンスを発揮できます。Macは、タスクを可能な限り高速に実行するための強力な処理能力を必要とするアプリにとって、理想的なプラットフォームです。Macはさらに、コミュニケーション、ニュースや情報の取得、ソーシャルメディアの利用、ゲームのプレイなどの日常的なタスクにも使用されます。
ツールを揃える
Xcodeには、インテリジェントなコード補完、Appleデバイスのシミュレータ、プロファイリング/デバッグ用の高度なツールなど、すべてのAppleプラットフォーム向けアプリの開発、テスト、配信に必要なツールが揃っています。
Swiftは、すべてのAppleプラットフォームに対応し、直感的に使えるパワフルなプログラミング言語です。シンプルでありながら表現力豊かな構文と最新の機能を備え、簡単に使い始めることができるSwiftは、デベロッパの皆さんを魅了することでしょう。Swiftでコーディングすれば、安全性を確保しながら、スピーディに動作するソフトウェアを開発することができます。
SwiftUIでは、Swiftのパワーを活用し、驚くほど少ないコードですべてのAppleプラットフォーム向けに美しいアプリを構築できます。
デザインの追求
魅力的な体験を提供するアプリには、ユーザーが自然と集まります。そのようなアプリを構築するには、魅力的なUI、直感的な操作性、わかりやすいレイアウトを心がけ、全体を通して適切なコンテンツに重点を置く必要があります。
デザインプロセスを開始する際は、Appleのヒューマンインターフェイスガイドライン(HIG)を活用することをお勧めします。HIGには、アプリのインターフェイスのデザイン方法、コンテンツのナビゲーション、インタラクションの管理について重要な情報が記載されています。また、関連するAppleのデザインリソースを確認することをお勧めします。
ヒントを得たい方は、デザインの基本に関する以下のビデオをご覧ください。
Macには、ユニークで表現豊かなインターフェイスを構築するための十分な画面スペースがあるため、情報を直感的に表現する方法を検討します。また、システム固有のデザインパターンがUIに与える影響についても考慮します。
- ウインドウは、アプリのUIにおける中心的な要素です。ウインドウを1つまたは複数作成し、類似するコンテンツや異なるコンテンツを各ウインドウ内に配置します。ウインドウのサイズは、固定することもユーザーが変更できるようにすることもできます。集中できる作業環境を実現するため、フルスクリーンモードにも対応させましょう。
- メニューは、コンテンツに対して実行可能な操作を定義します。画面上部のメニューバーには、アクティブになっているアプリのメニューが表示されます。開発するアプリにおいて適切な操作を特定し、コンテンツの操作方法を反映したメニューを構成します。
- Dockは、アプリ、ドキュメント、ウインドウ、フォルダへのアクセスを容易にします。カスタムのDockメニューを追加すると、頻繁にアクセスするコマンドを表示したり、アプリのアイコンにバッジを追加して新規コンテンツがあることを通知したりできます。
一部の機能やテクノロジーは、すべてのmacOSアプリにおいて必要不可欠です。最初のUIを計画する際は、必ず以下の機能に対応するようにしてください。
ウインドウコントローラ
macOSでは、インターフェイス内の1つのウインドウのコンテンツをウインドウコントローラによって管理します(ウインドウを読み込む、表示する、閉じるなど)。SwiftUIではシーンを使用してウインドウを管理し、AppKitではNSWindowControllerオブジェクトを使用します。
ベストプラクティスの採用
以下のベストプラクティスを念頭に置き、すべてのユーザーにとってできるだけ最善の体験を提供しましょう。
プライバシーの優先
私たちは、プライバシーは基本的な人権であると信じています。ユーザーやデバイスに関するデータは、法令に基づいて必要な事項をユーザーに伝え、ユーザーの同意を得てから使うようにしてください。さらに、適切な手順を踏んでユーザーやデバイスのデータを保護すること、またこれらデータの用途を明らかにすることが大切です。データを収集する場合は、プライバシーに関する情報を表示し、収集するデータとその用途を説明するようにします。
収集および保存したデータの保護
データを収集する場合は必ず、悪意ある攻撃からそのデータを保護してください。パスワードに代わるセキュリティ対策としてパスキーを採用します。個人識別情報、金融データ、その他の機密性の高いデータは、ユーザーの暗号化されたキーチェーンに保存します。
アクセシビリティへの対応の検証
Appleのテクノロジーにはアクセシビリティへのサポートが組み込まれていますが、画面読み上げ機能やその他のアクセシビリティ機能は、アプリから提供される情報に依存します。SwiftUIおよびAppKitでは各UI要素を定義することはできますが、それらのUI要素がどのように相互に連携するかはデベロッパ次第です。アクセシビリティラベルやその他の説明で有益な情報を提供していること、およびフォーカスベースのナビゲーションがシンプルで直感的になっていることを確認してください。
アプリの国際化およびローカライズ
グローバルな市場を視野に入れ、アプリをローカライズして異なる地域や言語に対応させましょう。アプリをローカライズできるよう、異なる言語や地域向けに文字列、日付、時刻、通貨、数字をフォーマットするためのコードが提供されているFoundationフレームワークを使用します。左から右に書く言語と右から左に書く言語の両方において、UIが適切に表示されるよう対応させてください。アプリのリソースは、ローカライズしてXcodeのプロジェクトに追加します。
あらゆるユーザーを考慮したデザイン
コンテンツを作成する際は、社会的および文化的な違いを考慮してください。さまざまな社会的、文化的背景を持つ人々に響くアプリやゲームをデザインする方法を学びましょう。
アプリを徹底的にテストおよびデバッグする
開発サイクルでは、組み込みのXcodeデバッガを利用することで、発生した問題にすぐに対処できます。
パフォーマンスの最適化
XcodeのInstrumentsツールを使用して、コードのボトルネックやパフォーマンスに関するその他の問題を特定します。このアプリでは、実行コードのプロファイル取得、メモリリークの検出、リソース使用状況の分析などが可能です。
複数のAppleプラットフォーム向けの構築
iOSアプリを修正せずにAppleシリコン搭載Macで実行
Appleシリコン搭載Macでは、ポーティングプロセスを必要とせずにiOSアプリを実行できます。さらにiOSアプリがアプリ内で最新のiOS機能を利用している場合、macOSでもよりスムーズに実行されます。
iPadアプリのMacバージョンの作成
既存のiPadOSアプリがある場合は、Mac Catalystを使用してMac対応バージョンを作成することも可能です。
アプリの配信
構築したアプリやゲームは、App Storeの175のストアフロントで配信できます。無料、フリーミアム(基本は無料、オプションでアプリ内課金)、有料など、さまざまなビジネスモデルから選択できます。アプリ開発の早い段階でビジネスモデルを選択し、優れたアプリ体験をユーザーに提供しましょう。
知識を深める
アプリをビルドし、実行できることを確認したら、その体験を向上させる方法を検討しましょう。特定の機能を追加したり、コンテンツを別の方法で表示したりするなどの小さな変更を加えることで、大きな違いをもたらすこともあります。
macOSアプリのドキュメントを確認し、より高度で包括的なリソースを利用して、アプリの機能強化とユーザーリーチの拡大を狙いましょう。