コンセプト
高凝集性と低結(jié)合性はソフトウェア エンジニアリングの概念であり、ソフトウェア設(shè)計(jì)の品質(zhì)を判斷するための基準(zhǔn)です。プログラムのオブジェクト指向設(shè)計(jì)は、主にクラスの凝集度が高いか、結(jié)合度が低いかによって決まります。
目的
プログラム モジュールの再利用性と移植性を大幅に強(qiáng)化すること。
一般に、プログラム構(gòu)造內(nèi)の各モジュールの凝集度が高くなるほど、モジュール間の結(jié)合度は低くなります。凝集度は、機(jī)能的な観點(diǎn)からモジュール內(nèi)の接続を測定します。優(yōu)れた凝集性モジュールは、正確に 1 つのことを行う必要があり、モジュール內(nèi)の機(jī)能的な接続を記述します。結(jié)合とは、ソフトウェア構(gòu)造內(nèi)のモジュール間の相互接続の一種です。測定的には、モジュールの強(qiáng)度結(jié)合は、モジュール間のインターフェイスの複雑さ、モジュールに入るまたはアクセスされるポイント、インターフェイスを通過するデータによって異なります。
(ビデオ チュートリアルの推奨: java ビデオ チュートリアル)
カップリングを減らす方法
1. 使用するクラスの數(shù)を減らします。多目的インターフェイスは実裝の詳細(xì)を隠します。 Java オブジェクト指向プログラミングでは、ポリモーフィズムのサポートに加えて、実裝の詳細(xì)を隠すためのインターフェイスが導(dǎo)入されています。
2. モジュールの機(jī)能分割はできるだけシンプルにする必要がありますが、その理由も非常に単純で、単一関數(shù)のモジュールは他のモジュールから呼び出される機(jī)會(huì)が少なくなるからです。 (実際、これは高凝集性を表す言い方です。一般に、高凝集性と低結(jié)合性は同時(shí)に現(xiàn)れます)。
3. 定義に従い、1 か所のみに表示されます。
4. グローバル変數(shù)の使用を減らします。
5. クラスの屬性とメソッドを宣言するときは、パブリック キーワードを減らし、プライベート キーワードを多く使用します。
6. 多目的デザイン パターン: たとえば、MVC デザイン パターンを使用すると、インターフェイスとビジネス ロジックの間の結(jié)合を減らすことができます。
7. 「ハードコードされた」方法でプログラムを作成しないようにし、SQL ステートメントを直接使用してデータベースを操作することも避けてください。
8. 最後に、もちろん、他のモジュールやクラスを直接操作したり呼び出したりすること (コンテンツ結(jié)合) は避けてください。モジュール間に結(jié)合が存在する必要がある場合は、原則としてデータ結(jié)合を使用し、制御結(jié)合の使用を減らし、制御結(jié)合を制限するようにしてください。パブリック カップリングの範(fàn)囲。コンテンツ カップリングの使用は避けてください。
凝集性を高める方法
1. モジュールは最小限のインターフェイスのみを外部に公開し、最小限の依存関係を形成します。
2. 外部インターフェイスが変更されていない限り、モジュール內(nèi)の変更は他のモジュールに影響を與えてはなりません。
3. モジュールの削除は、依存関係のある他のモジュールにのみ影響を與える必要があり、他の無関係な部分には影響を與えるべきではありません。
推奨チュートリアル: java エントリー プログラム
以上が高凝集性と低結(jié)合性の概念を理解するの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)