オブジェクト指向のC#のコメントの6つの原則

プロパティ;カプセル化クラスにどのようなデータが必要!

方法:(タスク)を備えていたクラスを達成するために!

デザインクラスは、設計属性とメソッドを完了することです!

考慮して、それぞれの人の思考の角度が異なっている、使用方法の違い、プロパティとメソッド広東王差の最終的なデザインがあります。限り真実は理にかなっているように、

それは合理的です。

オブジェクト指向の学習がそうで原則、方法、スキル、経験、デザインパターンのセットとを学んでいます!比較的容易に高度なスキル後のポイント、!

OOPの原則:

1.シングル責任(明確な責任の原則オブジェクト):SRP、タスクを達成するためのオブジェクトが明確でなければなりません!ユニバーサルデザインはクラスではありません。

  責任問題:フォームクラス----ユーザーの行動やデータ操作、表示関連データを取得します。

            データクラスは----私たちが必要とするデータをカプセル化します。

            ----トラフィッククラスは、ユーザーが要求したさまざまなアクションをカプセル化します。

アプリケーション:主な影響は、私たちは視点と内容を考えることです。

2.クローズ原理:(オープン拡張、我々はユーザーのニーズは常に変化している、プロジェクトを設計した後と言うことです修正閉じ原則)OCP、

  あなたのプロジェクトのソースコードのニーズに変更が非常にほとんど、あるいはまったく修正変更した場合、プロジェクトの設計は、非常に良好な場合。唯一のモジュールまたはクラス(拡張子)の誇りを高めます。

  これは、どこにでも我々の開発では、その後で、私たちは後で周りに拡張するための拡張であり、その多くの様々なデザインパターン、設計手法を学びます。

アプリケーション:主な影響は、私たちのプログラムの全体的な設計、またはいくつかのモジュールの設計です。これは、メソッドを使用して、様々なモードを学ぶことを意味します。

例えば、簡単な工場では言及されます!

セレクタmySelector =新しいセレクタ();我々は新しいオブジェクトであるときに言うことです、プログラミング段階でのオブジェクトは明らかです。とき、それはこの方法でやりましたか?あなたが使用するオブジェクトが一定である場合、この方法は、できるだけ早くとして使用します。

しかし、我々はあなたが使用したい場合も、他のオブジェクトを選択するセレクタ一意に決まることがあり、それ自体ではありませんオブジェクト。この時点で、我々は新しいを指示することはできません。オブジェクトの作成パッケージを考慮する必要があります!第三者に完了します。サードパーティは、メソッド、クラス、またはモジュールの一部、サードパーティのライブラリであってもよいです。

このオブジェクトは、プログラムが実行されるステージが決定されたとき、セレクタmySelector- [モジュール]ファクトリメソッドまたはので、私は議事録の準備段階にあったかわかりません。これも呼ばれる遅延オブジェクトが作成されます。

結果:ファクトリメソッド内に変更する方法、当社の発信者に影響はありません。

ユーザーの需要の変化ファクトリメソッドまたはモジュールにカプセル化されているので、我々はプログラム自体を変更する需要の変化までの時間はありませんが、このアプローチは、オープンクローズドの原則に従います。

3.リヒター置換原則(これは私たちが継承使用にについて語ったものです):それは親クラスがサブクラスを置き換えるために使用することができます表示されているところISPは、私たちはこの継承を説明した後、あなたは理解するだろう。インターフェース実装クラスに置き換えることができ、インタフェースが表示される場所、すなわち(この汎用性は、インターフェースに拡張することができます)。

例:クラスA {}

      クラスB:A {}

      クラスC:A {}

[1] Aは、一般的なカテゴリであれば、我々A =新しいA();

[2] Aは、抽象クラスである場合、我々はAを使用している=新しいB();ワンピースのタイプである抽象クラスは、従わなければならないが、そのサブクラスオブジェクト点です。

4.デメテル:LoDの、最小の結合の原理(最小の既知の原理)、主に完全デカップリングします。実際には、我々は相互に依存しており、なぜOOPは習得が難しく、使用することは困難である、お互いに影響を与える様々な原理を説明します。

、実際には開閉の原理を、だけでなく、方法をデカップリングを達成するために:デカップリング。すべての拡張モード、すべての周りのデカップリング。

用途:私たちはレイヤード風モジュールを投影するの後ろに、分離されています。

分離インターフェース(インターフェース最小化原理)の原理:モジュールに関連付けられたAとBモジュールは、インターフェースが非常に大きい場合、このアプローチは動作しません!

インターフェイスは広い概念であります!インターフェイスは広い概念です。あまりにも、非常に面倒呼び出されたときにメソッドのパラメータがあれば!メソッドが定義されている場合、以下4~5の一般的なパラメータ。

解決策:エンティティクラス、引数としてオブジェクトと!

大まか:たとえば、私たちは機能モジュールをパッケージ化、最初のインターフェイスのデザイン、インターフェースデザインは、あなたはあまりにも多くのデザインはありません。過度のインターフェイスのデザインは、オブジェクトが多く、多くの方法であることを意味します。

6依存性逆転原理(DIP):上部、であるか、または「詳細」下地依存ので、「抽象的」。

  目的:1は、必要に応じて拡張することができます。

        2.チームワークが必要。当社の建築家やプロジェクトリーダーは、最初に様々なインタフェースは、ITプロジェクトのコアビジネスライティングビジネス・コンポーネントに基づいて完成したプロジェクトの枠組みを、作成します。このフレームワーク及びプルインターフェースに従って得られる具体的な詳細の開発を完了するために、特定の開発者、。          

おすすめ

転載: www.cnblogs.com/LiyuLi/p/12298209.html