2016-10-28 5 views
0

私たちは当初、Marionette Behaviorsを我々のビューのためのモジュラーコンポーネントを構築するためのツールとして近づけましたが、それは再利用性のための行動を創り出すことだけでした。ビューをイベント駆動型ビヘイビアーから分離するためにビルドしたい特定のビヘイビアはまだありますが、あまりにも具体的なものと考えられます。複雑なビジネスロジックを持つ複雑なテンプレートと相互作用するフォーム上のイベント駆動型動作。マリネット行動へのデザインアプローチ

私の状況を眺めながら、モジュラービヘイビアだけを適切な方法で構築していますか?明らかに、Marionetteは、ユーザーには適切と思われる行動を使用する自由を与えますが、一度だけ使用されても動作を構築する必要がありますか?

+0

ビヘイビアは一般的にビュー間で再利用されることを意図していますが、読みやすくするために複雑なビューを複数のビヘイビアに分割するのが理にかなっています。 –

+0

@ThePaxBisonica私は完全に同意します。さらに、私たちのマリネットを更新していないので、行動を簡単に再利用できなくなってしまいます。返信ありがとう – chungmeow

答えて

0

マリオネットの行動は、ビューから再利用可能な行動を抽出し、必要に応じて再利用する方法です.Pax Bisonicaの書き込みと同じです。再利用不可能な特定のビューを構築するのではなく、他のビューで再利用されなくてもビヘイビアに抽象化することを選択する理由は間違いありませんが、ビューCをビューBから継承し、ビューからBなど

例として、我々は非常に特異的に作用カスタムビュー(C)を、持っているしたいとしましょう。そのビューには他の2つのビューと共通するものがあるので、共通の動作を持つBaseViewクラス(A)に基づいて新しいビュー(B)を作成します。その後、そのビューを拡張して、私たちが行ったカスタムビューを作成します(C)。

この 'クラス'継承は、特にアプリケーションの成長に伴って非常に乱雑になることがあります。ビヘイビアでは、機能をアタッチ可能なオブジェクトに抽象化します。クラス継承アプローチでは、initializeメソッドが1つしかないので、initializeメソッドでリスナーなどを追加する必要がある場合は、最初からビューを変更する必要があります。

動作は、理解しやすく、リファクタリングして読みやすくするため、後で再利用するかどうかにかかわらず、一般的には良い方法です。

だから、たとえビヘイビアが非常に具体的になり、最終的には再利用する必要がなくても、ビヘイビアをよりリーンに保つためには、理にかなった行動を使用することをお勧めします。

+0

返信いただきありがとうございます。私はあなたに完全に同意します。 – chungmeow

関連する問題