0

私たちは、特権のない子供たちのための電子書籍リーダーとして機能する iPad 用の非常に大きなアプリケーションを作成するチームです。アプリは途中で作成されたので、一歩下がってアプリケーションの設計全体を見直す必要があると考えました。私たちが構築しているアプリケーションは、iOS の現在のソフトウェア開発アーキテクチャ プラクティスに非常に準拠している必要があります。以下の質問とともに説明があります。

現在、アプリケーションには約 50 個のビュー (および増加中) があり、トップレベル ビューのほとんどはストーリーボード (つまり、単一のストーリーボード) にあり、残りは XIB (サブビュー、再利用可能なアイテム レンダラーなど) にあります。 )。

このアプローチは大丈夫ですか?

最新の iOS アプリケーションでは XIB を完全に省略すべきですか?

絵コンテはそのままでよいですか、それともサブ絵コンテに分割する必要がありますか? あるとすれば、ストーリーボードを分解する正確なプロセスはどのように行うべきですか? モジュールはどのように決定されますか?

アプリケーションを正しい方法で管理するためのヒントや、合理化されたモジュラー アプリケーションを支援するための経験則がある場合は、コメントに記載してください。

長文で恐縮ですが、お読みいただきありがとうございます。

4

1 に答える 1

1

これは少し主観的なものですが、私の意見では、ストーリーボードと一緒に Xibs を使用することは依然として有効であり、望ましいことです。ストーリーボードのアイデアは素晴らしいですが、現在の実装ではいくつかの機能が確実に欠けています。私は最近いくつかの大規模なプロジェクトに取り組んでおり、ストーリーボードは常に最初はうまくいきますが、遅かれ早かれ、テーブルのセルをコピーして貼り付け、次にコントローラーをコピーして、更新のたびに複数の場所で物事を変更する必要があることに気付きます。まったく維持できません。そうです、再利用可能なビューのためにXibファイルを必ず使用してください。

ただし、複数のストーリーボードのアイデアにはあまり熱心ではありません。これは技術的には簡単に達成できますが、私にとってはストーリーボードの目的を完全に無効にします。それらの唯一の用途は、アプリケーションを介したコントローラーのフローの (比較的) 明確な概要としてです。それらはいくつかの小さな便利さを追加しますが、一般的に、保存するよりも多くのコードを作成し、いくつかの奇妙なコードパターンを作成することがよくあります (例:prepareForSegue:、プロパティ設定が必要なコードでコントローラーにセグエする場合、ivar を一時的に保存する必要があります)。おっしゃる通り、絵コンテをサブ絵コンテに分割する方法を教えてください。どのようなパーティション分割スキームを選択しても、後でアプリの構造が変更されたときに変更される可能性があり、まったく面白くないとしか思えません。アプリケーションに異なる操作モードがある場合、ストーリーボードを分割することは理にかなっているかもしれませんが、これはほとんどのアプリには当てはまらないと思います。

したがって、IMO、ストーリーボードは 1 つですが、再利用可能なビューには Xibs を使用します。

于 2012-12-21T12:16:38.073 に答える