ソフトウェア設計不可欠な「SOLID原則」

オリジナル  の未知のバグ  最後に、バグ   2月21日

01SOLIDはじめ原則

    常にコード、または必要なときに変更への総必要の当社のソフトウェアの設計・保守プロセスでは、我々はまた、私たちのデザインを変更する必要があり、ましてや恥ずかしい地域コードを維持するために、他のエンジニアにつながったし、エンジニアの間でなければなりません良いコードを維持するために設計された一連の原則。「SOLID原則は」便利に送信されますので、そんなにそれが原則であることを理想的な目標それであると言うことではありません!基本的に困難なコードを持っているので、それはそれを完全に満たすことができます。

    「SOLID」は、ソフトウェアの設計原理の5種類の名前の最初の文字だった実際には、彼らは以下のとおりです。

    「単一責任の原則」。

    「オープンクローズドの原則」。

    「リスコフの置換原則」。

    「インターフェイスの棲み分け原理」。

    「依存関係逆転の原則」。

    英語の単語の意味は、一般的に以下のとおりです。原則に依存して、単一責任の原則、開閉の原則、リスコフの置換原則、インタフェースの分離の原則、。だから、本当に必要な、単一責任はモジュールパッケージである、置換原理は、柔軟性、移植性であるべき、とのインターフェースは、私は、後に各原則と詳細なチャットで、その後、ここで理解するだけのシンプルだ、と、ですので。

02シングル責任の原則

    まあそれは、我々のデータや機能を単一の関数である文字通りの意味から理解しました。このようなモジュール性は、1手を容易にするだけでなく、モジュールがより凝集し!

    例えば、お金の担当のレジ係が良いは、労働者の明確な区分が夫婦とプログラミング上の問題とのより良い対処することができるようになりますので、ウェイターが、ゲストのための責任がある、です。

03開閉原理

    私たちは、最初に感じないだけでなく、我々は我々の機能モジュールを拡張するために新しいコードを追加することが必要であること「の拡張のために開いたが、修正のため閉鎖」と言って、代わりに現在のコードを変更、原則の意味理解して前のコードと互換性があります。

    ポイントは、既存の顧客や通常の使用が、顧客の新たな需要を変更するべきではありませんそれを別の関数のコードを配置するだけで後、私たちは、コードと古いコードを追加することで、顧客サービスのために一緒に働きます。古い機能の安定性を確保しながら、一方では、これは、テストプロセスを短縮することができます。に対応した送信を添加しながら、例えば、我々は、シリアル通信の送信を介してメッセージを送信することができ、また、送信を伝えることができ、その後、私たちはその時点での通信を追加する必要がある次の時間は、唯一、通信タイプの種類を追加する必要があります!

04Liskov置換原則

    私たちは私たちの基本的なインタフェースの主な新機能を実現する必要がある場合に主要な原則は、イデオロギー的な変更は根本的に変わりません交換することで、一般的に、実際には、変更する必要はありませんが、既存のインターフェイスで新しい上位のアプリケーションを実現するために真ん中のインターフェースも上位層への根本的なインターフェースの関連する機能を持っていなければならないときに我々は、低レベルのインターフェースの開発時に必要とされています。

    たとえば、私たちはあなたの部下1-2-3何かが、あなたはおそらくポイント4 1-2-3何かに従って問題を総括することをあなたに報告し、この時間は、あなたは1-2-3-4にできるようにする必要がありますあなたの上司を報告し、それが唯一の総合です。

分離の05コネクター原理

    簡単に言えば、よりシンプルなインターフェースが優れている、時には私たちは、ユーザインターフェースとインターフェースするために多くが完全に開いて表示され、これは、一部のユーザーインターフェイスがアクセス権を持っていないので、我々は、分類するためのインタフェースを簡素化する必要がある、必要はありませんユーザーのニーズに応じてインターフェースの分離!これは、インターフェースがより簡単にポータブルで使用可能!

06依存関係逆転の原則

    我々は、オブジェクトまたは特定の上部に頼るべきではない、と抽象クラスに依存しなければならないこと!

    例えば、我々は、通信プロトコルを開発したい、プロトコルは、このシリアルデバイスオブジェクトに頼るべきではありませんが、共通の通信に頼る必要があり、例えば、オープン/受信/送信などに依存しています。

    さて、ここでの公衆番号が「最後のバグ」である。ここで、このデザインについてだけの簡単な紹介、フォローアップして、実用的な例の解析に!あなたの懸念のためのあなた!

おすすめ

転載: www.cnblogs.com/CodeWorkerLiMing/p/12633983.html