1

コントローラーがビューとモデルにアクセスできる唯一のモデルであるため、モデルはビューを認識せず、その逆も同様である明確なMVCモデルを作成しようとしています。

別の xcode プロジェクトでモデルを作成し、テストしたところ、必要なことが実行されました。今、コントローラーとビューを使用してコードを新しい「完全なアプリケーション」プロジェクトにコピーする代わりに、モデルのライブラリを作成し、コントローラーをそれで動作させる方が良いのではないかと考えていました。

ビューとモデルを「ダム」に保つのが大好きなので、問題は見られません。コントローラーはすべての通信を処理するだけです。

ここで明確なアドバイスはありますか?モデルをライブラリに抽出する明確なメリットはありませんが (すぐに再利用するつもりはありません)、別のプロジェクトにモデルを配置し、コントローラーがアクセスできるように、モデルをアプリケーションのライブラリとしてインポートする方がクリーンに思えました。 .

新しい xcode プロジェクトに「他のプロジェクトを含める」という話を聞いたことがあります。それで、モデルを別のプロジェクトに保持し、完全なアプリケーションで動作させ続ける別の方法があるのではないでしょうか?

モデルとコントローラーの分離に近づくための最良の方法を探しているだけです。

ありがとう!

4

3 に答える 3

1

新しい「完全なアプリケーション」プロジェクトをセットアップし、ナビゲーターで右クリックして を選択New Groupし、このグループModelEngineを呼び出して、modelEngine ソース ファイルをプロジェクトに挿入します。下の画像のようになります。

[BuildPhase] タブで、ModelEngine が一緒にコンパイルされcomplete app、ファイルが他のプロジェクト内に配置されていることがわかります。(あなたのモデルエンジンの大きさはわかりませんが、コンパイル時に小さなオーバーヘッドが発生すると予想されます)

copy files if neededモデル エンジン ファイルのインスタンスを 1 つだけ保持する必要があるため、選択しないでください。そうしないと、どのファイルがどのプロジェクトの一部であるかがわかりにくくなる可能性があります。

ModelEngine.hcomplete appファイルを #import できるようになりました。必要に応じて、モデル プロジェクトを別のアプリとして実行することもできます。モデルに変更を加えると、ModelEngine プロジェクトにもすぐに反映されます。

ここに画像の説明を入力

HTH

于 2012-06-07T17:18:30.740 に答える
0

私のやり方は、関連するクラスを新しいプロジェクトにコピーするだけです。迅速かつ簡単で、フレームワークを作成するという概念を経ることなく、将来同じことを行うことができます。

于 2012-06-07T12:27:03.717 に答える
0

「お気に入り」を設定している場合は、クイック スタート ガイドのテンプレートとして保存できます

于 2012-06-07T13:08:57.157 に答える