23

Androidで使用されているデザインパターンのいくつかを知っています...

  1. 放送受信機は Observer Design Pattern を使用
  2. 意図は一種の工場設計パターンを使用します
  3. ビューは複合デザイン パターンを使用します
  4. メディア フレームワークは Facade デザイン パターンを使用します

これらとは別に、アンドロイドで使用される他のデザインパターンはありますか? あなたの考えに感謝します

4

1 に答える 1

8

Android は、その構造の中で多くのパターンを使用します。

一番最初に目にするパターンは Layer パターンで、POSA 1 (Pattern-oriented Software Architecture 1) の本ではアーキテクチャ パターンとして分類されています。Layers パターンの主な構造上の特徴は、Layer J のサービスが LayerJ+1 によってのみ使用され、レイヤー間に直接的な依存関係がないことです。このパターンは、高レベルの操作が低レベルの操作に依存する、低レベルの問題と高レベルの問題が混在する問題を解決します。Android は複数の抽象レベル レイヤー (詳細についてはhttp://elinux.org/Android_Architectureを参照) のスタック上に構築されているため、この設計はその問題を解決するために展開されます。

Android はマルチプロセスで多くの処理を行うため、IPC (プロセス間通信) メカニズムを適切に設計する必要があります。Android では、Binder と AIDL を使用して通信をシームレスに行いますが、これらのプロセスのサービスは Java、C、または C++ で記述できます。Binder は、Proxy (Gang of Four book)、Broker (POSA 1 book)、および Facade Wrapper パターン (このリンクhttp://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade を参照) によって実装されます。 pdf ) を実装します。プロキシ パターンは通信の詳細をクライアントから隠すため、プロセスはローカル コンテキストまたはネットワーク コンテキストでオブジェクトと均一に通信できます。ブローカーは、通信関連の問題を分離するために使用されます。ファサード ラッパー パターンは、C ライブラリ Android の低レベル関数とデータ構造を上位クラス インターフェイス内にカプセル化するために使用されます。

マルチスレッド機構も多くのパターンを使用しています。確認できるパターンは、実行時間の長い呼び出しを実行するために使用されるコマンド プロセッサ パターンです。

Observer パターンは、システム関連のステータスを追跡するために使用されます。

…。

今思い出せるのはこれだけです。Androidのデザインパターンに興味のある方。詳細については、Coursera のhttps://class.coursera.org/posa-001/class/indexのコースを参照してください。

于 2013-03-31T17:18:28.397 に答える