iOSのバックエンドの構築方法は?
このチュートリアルでは、 iOSのバックエンドを構築する方法を学びます。 Back4App.
データベース管理、クラウド機能、RESTおよびGraphQL API、ユーザー認証、ファイルストレージ、リアルタイムクエリ(ライブクエリ)など、Back4Appの重要な機能を統合する方法を説明し、iOSアプリケーションのための安全でスケーラブルで堅牢なバックエンドを作成します。
Back4Appの バックエンド・アズ・ア・サービスの提供により、 サーバーサイドのインフラストラクチャを設定する複雑さを軽減し、開発を加速することができます。
データを柔軟なNoSQLデータベーススタイルの形式で保存し、ユーザーアカウントを管理し、 プッシュ通知を追加し、カスタムソリューションを構築するのにかかる時間の一部で高度なアクセス制御を適用できます。
これにより、サーバーのメンテナンスやプロビジョニングを心配することなく、 ユーザーエクスペリエンスの向上やコア機能の実装に集中できます。
このチュートリアルの終わりまでには、実際のシナリオに適応でき、トラフィックの増加に対応でき、より複雑なロジックや サードパーティサービスを追加できる準備が整ったバックエンドを持つことができます。
iOSアプリのための信頼性の高いバックエンドを提供し、 開発プロセスを加速し、全体的な ユーザーインターフェースをより少ない労力で向上させることができます。
このチュートリアルを完了するには、次のものが必要です:
- Swift Package Manager またはCocoaPodsを使用してParse Swiftを追加します インストールの詳細については、Parse Swift GitHubの指示を参照してください。
Xcodeを使用した機能するiOS環境と無料のBack4Appアカウントを持っていると、スムーズに進めることができます。
新しいBack4Appプロジェクトは、あなたのバックエンド開発の基盤を形成します。データベース、API、認証、クラウド機能など、迅速かつ安全にバックエンドを構築するために必要なすべてのツールを提供します。
- Back4Appアカウントにログインします。
- 「新しいアプリ」をクリックして新しいアプリを作成します。
- アプリに名前を付けます(例:「iOS-Backend-Demo」)。
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/drXO0UqsgxhFvRDiVmsMb_image.png?format=webp)
作成されると、新しいプロジェクトがBack4Appダッシュボードに表示されます。
Back4Appは、内部でParseプラットフォームに依存しています。iOSの場合、Parse Swift SDKを使用します:
1. Parseキーを取得する Back4Appダッシュボードで、「アプリ設定」または「セキュリティとキー」に移動して、次のものを見つけます:
- アプリケーションID
- クライアントキー(該当する場合はSwiftキー)
- サーバーURL(通常は https://parseapi.back4app.com)
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/F9teHXd_M8ERn1OPGirbi_image.png?format=webp)
2. Parse Swift SDKを追加する 「Swift Package Manager」を使用している場合:
使用している場合は CocoaPods, あなたの Podfile:
次に実行します:
3. Parseを初期化する あなたの AppDelegate.swift (またはメインのSwiftUIアプリファイル) の中で、 ParseSwift.initialize(...) をあなたの資格情報で呼び出します:
おめでとうございます!あなたのiOSアプリはBack4Appに接続され、すべてのリクエストやデータトランザクションはParse Swiftを通じて自動的に行われます。
Back4Appは、各クラス/テーブルをダッシュボードから管理できるschemaアプローチを使用しています。例えば、Todoクラスを作成したいとします:
- 「データベース」に移動し、Back4Appコンソールで。
- 「新しいクラスを作成」をクリックし、名前をTodoにして、title(String)やisCompleted(Boolean)などのカラムを追加します。
Back4AppのAIエージェントは、スキーマ設計を加速できます:
- ダッシュボードでAIエージェントを開く。
- あなたのデータモデルを平易な言葉で説明する(例:「タイトルとisCompletedフィールドを持つ新しいToDoクラスを作成」)。
- AIにスキーマを自動的に構築させる。
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/0snNZwHWzxuXlNu30n7IA_image.png?format=webp)
「Parse Swift」を使用して、コード内でデータ構造を定義します。例えば:
また、REST呼び出しを使用することもできます。例えば、Todoを作成するには:
Back4AppはGraphQLサポートも含まれています。こちらがミューテーションの例です:
Back4Appはリアルタイムの更新をライブクエリを通じてサポートしています。Swiftの場合:
アクセス制御リスト (ACL)はオブジェクトごとの権限を制御し、クラスレベルの権限 (CLP)はクラス全体のデフォルトを設定します。
- クラスレベルの権限: Back4Appダッシュボードでクラス(例: Todo)を開き、「セキュリティ」タブをクリックします。読み取り/書き込みを認証されたユーザーまたはロールのみに制限できます。
- コード内のACL: ParseObjectを保存する際に、ACLを割り当てることができます:
これらを調整して、データが正しいユーザーによってのみアクセスされるようにします。
クラウドコードは、iOSアプリにサーバーサイドのロジックを追加するための最良の友です。機密性の高いロジックやバリデーションをクライアントから遠ざけ、外部APIを統合し、サーバー上でバックグラウンドタスクを実行できます。
ローカル(またはオンラインエディタ)で main.js ファイルを作成し、次の関数を定義します:
次のいずれかを使用します: Back4App CLI またはダッシュボード内の Cloud Code > Functions エディタ。
- CLIをインストールします:
- アカウントキーを設定します:
- デプロイ:
あなたの package.json(Cloud Code内)で、依存関係をリストします。次に main.js:
あなたのBack4Appダッシュボードでは、 _User クラスがすでに提供されています。メール確認、パスワードリセットなどを設定できます。
- サインアップ:
- ログイン:
Parse Swiftでソーシャルログイン(Google、Apple、Facebook)を統合できます。詳細な手順については、ソーシャルログインドキュメントを参照してください。
Parseを通じて画像やドキュメントなどのファイルをアップロードおよび取得します。Swiftの場合:
ファイルの権限は、Back4Appの設定またはアプリの parse-config ファイルで構成できます。たとえば、誰がファイルをアップロードまたは削除できるかを制限します。
メール確認は、ユーザーが提供したメールアドレスを所有していることを保証します。パスワードリセットのフローは、ユーザーが安全にアカウントを回復できるようにします。
- に行くアプリ設定 > ユーザーメール設定.
- メール認証を有効にする.
- を設定する送信者メール, メールテンプレート、およびオプションのカスタムドメイン。
を使用してクラウドジョブを使用して、古いレコードの削除や毎日の通知の送信などのタスクを自動化します。これらはサーバーサイドで実行され、クライアントによって直接トリガーされることはありません。
このジョブをBack4Appダッシュボードの サーバー設定 > バックグラウンドジョブ にスケジュールして定期的に実行します。
ウェブフックは、特定のイベントが発生したときにアプリが外部サービスにデータを送信できるようにします。例えば、Todoが作成されたときにSlackチャンネルに通知します。
- ダッシュボード: もっと > ウェブフックに移動し、「ウェブフックを追加」を選択します。
- エンドポイントを設定: 例 https://my-server.com/webhook-endpoint.
- イベントトリガー: 例 「クラスTodoの新しいレコード。」
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/morUMdwsAbVQ1EmBfUfAA_image.png?format=webp)
あなたの 管理パネル は、Back4Appダッシュボードの「その他」>「管理アプリ」からアクセスできます。管理ユーザーを作成し、簡単にアクセスできるサブドメインを選択してください。
- データブラウジング: ユーザーフレンドリーな形式でクラスを表示および編集します。
- ログ: サーバーログとCloud Codeログを確認します。
- 分析: 使用状況、プッシュ通知などを監視します。
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/jOFU8C0qiFm6wiVZXS9l0_image.png?format=webp)
このチュートリアルでは、iOSのバックエンドを構築する方法を学びました。
スケーラブルなデータベースを統合し、ACLとCLPを使用してセキュリティを実装し、Cloud Code関数を作成し、ユーザー認証を設定し、ファイルストレージを管理し、さらにはバックグラウンドタスクをスケジュールしました。
これらの基本的な機能が整ったことで、iOSモバイルアプリケーションのために信頼性の高いバックエンドを提供し、ユーザーエクスペリエンスやユニークな機能に集中することができます。
次のステップ:
- 高度な役割やマルチレベルのセキュリティのためのカスタムアクセスコントロールを探求してください。
- プッシュ通知、ジオクエリ、または外部データソースのような高度な機能を統合してください。
- パフォーマンスのヒント、ログ分析、またはリアルタイム分析のためにBack4Appの公式ドキュメントを確認してください。
- チャットアプリケーション、IoT統合、またはeコマース拡張に関する追加のチュートリアルを試してみてください。
Back4Appを活用することで、オープンソースに基づくプラットフォームを手に入れ、複雑さを軽減し、データを簡単に保存し、リアルタイム機能をiOSアプリに組み込むことができます。これらのステップを実装することで、デザイン、ユーザーフロー、またはビジネスロジックに取り組む時間が生まれ、あっという間にiOSアプリのための堅牢なバックエンドを作成できます。
![Doc contributor](https://s3.amazonaws.com/archbee-animals/cat.png)