2011-10-18 10 views
1

ますます多くのフレームワークがナビゲーションルールをコードから分離しようとしています。たとえば、JSFはfaces-config.xml内に「navigation-rule」タグを持ってページフローを制御します。新しいxcode 4.2ではストーリーボードが導入され、開発者はシーン間のナビゲーションを処理するためのコードを書く必要がありません。 私の質問は、ナビゲーションフローをコードから分離することが非常に重要な理由です。ページフローを処理するためにコントローラにコードを書くことに何が問題になっていますか?MVCのコードからナビゲーションルールを分離する理由

+0

JSF 2.0では、暗黙のナビゲーションによってこれらの冗長なXMLナビゲーションルールが削除されています。 – BalusC

答えて

0

ナビゲーションのフローを1か所に指定すると、使い慣れていないコードベースを簡単に理解できるようになります。特定のビューにどのようにアクセスできるかを正確に把握できますこれがダウン。

あなたはXCodeのストーリーボードエディタについて言及しています。もう1つの利点は、ナビゲーション構造をファーストクラスのエンティティとして持つことがツールになることです。

フレームワーク(不十分なJavaページフローフレームワークの1つであるかもしれません)が、ユーザーがこのフローに固執しているかどうかをチェックしても、意図したフローに違反した場合に起こるエラーを簡単にキャッチできます。 (例えば、ユーザが「ウィザード」タイプのインタラクションの中間を開こうとする場合)。

このようなフレームワークを使用すると、「簡単な」コードと比較して認知オーバーヘッドが発生します。つまり、「コントローラメソッドコード」よりも抽象度の高いパターンを無視する必要はなく、直接コードをスパゲッティコードに変換することもできます。明らかに、アプリケーションのビュー数とそれらの間の接続の複雑さによって、ナビゲーションフローを形式化する利点が増えます。

関連する問題