Richtiges Packen von Java-Klassen

Eng zusammenhängende Klassen gehören in ein Paket

Obwohl sich dieses Prinzip vor allem auf die Verknüpfungen zwischen unterschiedlichen Klassen bezieht, führt die Zusammenfassung eng zusammenhängender Klassen in einem Paket dennoch zu einheitlicheren Paketen. Wenn zwei Klassen eine starke Verknüpfung aufweisen, werden sie vermutlich auch häufig im Rahmen einer Reihe von zusammenhängenden Diensten gemeinsam genutzt. Wenn man also beim Erstellen der Pakete die Verknüpfungen zwischen den einzelnen Klassen beachtet, lassen sich die Abhängigkeiten zwischen den Pakten reduzieren, so dass sich Änderungen an einem Paket weniger wahrscheinlich auch auf andere Pakete auswirken.

Gemeinsam veränderte Klassen gehören in ein Paket

Natürlich sind eng miteinander verknüpfte Klassen eher gemeinsam von Änderungen betroffen. Veränderungen des Interfaces einer Klasse führen häufig zu entsprechenden Änderungen in allen mit der geänderten Klasse zusammenhängenden Klassen. Es müssen daher zumindest auch die Klassen geändert werden, die die veränderte Methode aufrufen. Dieses Veränderungs-Management lässt sich problemlos vereinfachen, indem man eng miteinander verknüpfte Klassen in dieselben Pakete setzt.

Allerdings sind auch bestimmte, nicht eng zusammenhängende Klassen von erforderlichen Systemänderungen betroffen. In diesen Fällen sollten Sie die entsprechenden Klassen ebenfalls zu Paketen zusammenfassen. Wenn separate Klassen die erforderlichen Änderungen benötigen, könnten sie ein eher holperiges Verhalten verursachen, auch wenn sie vielleicht nicht direkt miteinander verknüpft sind. Daher sollten bei mehrere System-Klassen betreffenden Änderungen alle entsprechenden Klassen so nah wie möglich beieinander angeordnet werden.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Richtiges Packen von Java-Klassen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *