Heim > Java > JavaErste Schritte > Hauptteil

Verständnis der Konzepte hoher Kohäsion und niedriger Kopplung

王林
Freigeben: 2020-06-16 15:47:12
Original
4066 Leute haben es durchsucht

Verständnis der Konzepte hoher Kohäsion und niedriger Kopplung

Konzept

Hohe Kohäsion und geringe Kopplung ist ein Konzept zur Beurteilung der Qualität von Software-Design wird hauptsächlich verwendet für Das objektorientierte Design eines Programms hängt hauptsächlich davon ab, ob der Zusammenhalt der Klasse hoch und der Kopplungsgrad niedrig ist.

Zweck

Um die Wiederverwendbarkeit und Portabilität von Programmmodulen erheblich zu verbessern.

Im Allgemeinen gilt: Je höher der Grad der Kohäsion jedes Moduls in der Programmstruktur, desto geringer ist der Grad der Kopplung zwischen den Modulen. Kohäsion misst die Verbindungen innerhalb eines Moduls aus funktionaler Sicht. Ein gutes kohäsives Modul sollte genau eines tun, und es beschreibt die funktionale Verbindung innerhalb des Moduls. Metrisch gesehen ist es die Stärke von Die Kopplung hängt von der Komplexität der Schnittstelle zwischen Modulen, dem Punkt, an dem ein Modul betreten oder darauf zugegriffen wird, und den Daten ab, die die Schnittstelle passieren.

(Empfohlenes Video-Tutorial: Java-Video-Tutorial)

Methoden zur Reduzierung der Kopplung

1. Verwenden Sie weniger Klassen. Vererbung und Mehrzweckschnittstellen verbergen Implementierungsdetails. Zusätzlich zur Unterstützung von Polymorphismus führt die objektorientierte Java-Programmierung Schnittstellen ein, um Implementierungsdetails zu verbergen.

2. Die funktionale Aufteilung von Modulen sollte so einfach wie möglich sein. Der Grund dafür ist, dass Module mit einzelnen Funktionen weniger Möglichkeiten haben, diese aufzurufen. (Tatsächlich ist dies eine Ausdrucksweise für hohe Kohäsion. Hohe Kohäsion und geringe Kopplung treten im Allgemeinen gleichzeitig auf.)

3. Folgen Sie einer Definition und erscheinen Sie nur an einer Stelle.

4. Verwenden Sie weniger globale Variablen.

5. Verwenden Sie beim Deklarieren von Klassenattributen und -methoden weniger öffentliche und mehr private Schlüsselwörter.

6. Durch die Verwendung des MVC-Entwurfsmusters kann beispielsweise die Kopplung zwischen der Schnittstelle und der Geschäftslogik verringert werden.

7. Versuchen Sie, Programme nicht „hart codiert“ zu schreiben, und vermeiden Sie die direkte Verwendung von SQL-Anweisungen zum Betrieb der Datenbank.

8. Vermeiden Sie es natürlich, andere Module oder Klassen direkt zu bedienen oder aufzurufen (Inhaltskopplung). Versuchen Sie grundsätzlich, die Datenkopplung zu verwenden, weniger Steuerkopplung zu verwenden und dies zu begrenzen den Umfang der öffentlichen Kopplung. Vermeiden Sie die Verwendung von Inhaltskopplung.

Methoden zur Verbesserung des Zusammenhalts

1. Das Modul stellt nur minimale Schnittstellen zur Außenwelt bereit und bildet die geringsten Abhängigkeiten.

2. Solange die externe Schnittstelle unverändert bleibt, dürfen Änderungen innerhalb des Moduls keine Auswirkungen auf andere Module haben.

3. Das Löschen eines Moduls sollte sich nur auf andere Module auswirken, die Abhängigkeiten haben, und nicht auf andere irrelevante Teile.

Empfohlenes Tutorial: Java-Einstiegsprogramm

Das obige ist der detaillierte Inhalt vonVerständnis der Konzepte hoher Kohäsion und niedriger Kopplung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!