設計モード(1)

1498 ワード

設計モード(1)
せっけいげんり
オブジェクト向けプログラミングのポイント:
(1)OOベース:抽象,カプセル化,マルチステート,継承.
(2)OO原則:パッケージ変化;複数の組み合わせを使用し、継承を少なくします.インタフェースに対してプログラミングし、実装に対してプログラミングしない.
(3)OOモード:例えば、ポリシーモードは、アルゴリズムファミリーを定義し、それらの間を互いに置き換えることができるようにパッケージ化され、このモードはアルゴリズムの変化を独立してアルゴリズムを使用する顧客に与える.
  • 設計原則一
                 ,       ,                  。
  • 設計原則二
          ,         。
    「インタフェース向けプログラミング」は、「スーパータイプ向けプログラミング」を意味する.「インタフェース」には複数の意味があり、インタフェースは「概念」であり、Javaのinterface構造でもある.また、Javaインタフェースに関係なく、「インタフェース向けプログラミング」は、マルチステートに鍵を置くこともできます.
  • 設計原則三
  • 設計原則4:依存逆転
         ,       。
    この原則は、高層コンポーネントを下層コンポーネントに依存させることはできないことを示している.また、高層コンポーネントまたは低層コンポーネントにかかわらず、「両者」は抽象に依存すべきである.OO設計における依存逆転の原則に違反しないようにする:(1)変数には具体的な参照はできない.(2)クラスを特定のクラスから生成させない.(3)ベースクラスで実装されたメソッドを上書きしない.
  • 設計原則5:最小知識原則 、対象間の相互作用を減らす.つまり、システムを設計している場合は、オブジェクトにかかわらず、インタラクティブなクラスがどのようなものであるかに注意し、これらのクラスとどのようにインタラクティブなものであるかに注意します.一部を変更しないように、他の部分に影響を与えないように、多くのクラスを結合しないでください.

  • 次の範囲のメソッドを呼び出します.
      (1)     
      (2)                 
      (3)                
      (4)        

    例:
    public float getTemp(){
      Thermoeter thermoeter = station.getTherometer();
      return thermoeter.getTemperature();
    }

    変更:
    public float getTemp(){
      return station.getTemperature();//      ,        。
    }
  • 設計原則6:ハリウッド原則私たちを呼び出さないでください.私たちはあなたを呼び出します.