Dey
Banned
- Registriert
- Mai 2005
- Beiträge
- 1.925
Hallo.
ich habe kein konkretes Problem, sondern eine eher allgemeine Frage, die das Thema "Software Engineering" betrifft.
Zurzeit befinde ich mich in meiner Ausbildung und bin in meiner Projektphase. Während dieser habe ich eine Schnittstelle zur Kommunikation zwischen Client-PC und Server von Java nach .NET migriert.
Als Schwäche der bestehenden Programmierung habe ich in meiner Dokumentation die Tatsache angesehen, dass die Klassen zur Kommunikation (diejenigen, die die Socket-Funktionalität implementieren) nicht an Änderungen der Netzwerkinfrastruktur anpassbar sind, weil sie eine konkrete Implementierung verwenden.
Deshalb habe ich in in meinem Programm die Schnittstelle für die Kommunikation durch Verwendung eines Interfaces abstrakt gekoppelt, sodass im Falle einer Änderung nur eine neue Klasse geschrieben werden muss, die das Interface implementiert und seine Methoden "Read" und "Write" überschreibt.
Somit würden sich künftig neue Socket-Bibliotheken nutzen und auch spezielle Parameter nachträglich ändern lassen.
Irgendwo sehe ich jedoch auch ein, dass ich an dieser Stelle mit "Kanonen auf Spatzen schieße" und frage mich, ob die Nutzung einer abstrakten Entität an dieser Stelle sinnvoll/möglich ist.
Was denkt ihr darüber?
ich habe kein konkretes Problem, sondern eine eher allgemeine Frage, die das Thema "Software Engineering" betrifft.
Zurzeit befinde ich mich in meiner Ausbildung und bin in meiner Projektphase. Während dieser habe ich eine Schnittstelle zur Kommunikation zwischen Client-PC und Server von Java nach .NET migriert.
Als Schwäche der bestehenden Programmierung habe ich in meiner Dokumentation die Tatsache angesehen, dass die Klassen zur Kommunikation (diejenigen, die die Socket-Funktionalität implementieren) nicht an Änderungen der Netzwerkinfrastruktur anpassbar sind, weil sie eine konkrete Implementierung verwenden.
Deshalb habe ich in in meinem Programm die Schnittstelle für die Kommunikation durch Verwendung eines Interfaces abstrakt gekoppelt, sodass im Falle einer Änderung nur eine neue Klasse geschrieben werden muss, die das Interface implementiert und seine Methoden "Read" und "Write" überschreibt.
Somit würden sich künftig neue Socket-Bibliotheken nutzen und auch spezielle Parameter nachträglich ändern lassen.
Irgendwo sehe ich jedoch auch ein, dass ich an dieser Stelle mit "Kanonen auf Spatzen schieße" und frage mich, ob die Nutzung einer abstrakten Entität an dieser Stelle sinnvoll/möglich ist.
Was denkt ihr darüber?