Hi,
ich habe im "Hintergrund" ein System, welches Daten entgegen nimmt und diese intern verarbeitet.
Diese Daten können u.a. per HTTP-Request reinkommen. Aber auch andere Wege sollen möglich sein.
Ich habe natürlich auch ein paar Klassen mit Eigenschaften usw. Diese Eigenschaften möchte ich nun immer auf den richtigen Weg aufbereiten und das das Hintergrundsystem schicken. z.B. per HTTP-Request.
Allerdings weiß ich nicht, wie ich dies elegant designen kann. Ich habe mir gedacht, dass z.B. eine Connector-interface mit einer "create()" Methode erstellen kann und davon dann Unterklassen "HTTPConnector" usw.
Meine eigentlichen Klassen mit den Eigenschaften sollten dann z.B. HTTPConnector impementieren.
Dann müsste ich natürlich die create()-Methode auf den "HTTP-Fall" anpassen.
Was ist aber nun wenn ich von HTTP auf einen CAN-Bus wechseln möchte? Dann muss ich alle create()-Methoden löschen bzw neu erstellen. "Schnell mal hin und her" wechseln klappt dann nicht. Ich müsste dann immer einen Teil vom Code auskommentiert haben?!
Ein anderer Weg, der mir einfällt wäre das ich in den HTTPConnector eine Methode ala "create(MeineKlasse mk)" schreibe und das halt mehrmals und für jede einzelne Klasse dann einen angepassten Methodenrumpf.
Dies kommt mir aber nicht sonderlich elegeant vor, da die Klassen-Logik dann teilweise im HTTPConnector landet..
Ich hoffe Ihr konntet verstehen was ich meinte...
Sehr allgemein ausgedrückt:
Ich will Objekt A,B,C (jeweils unterschiedliche Klassen) über verschiedene Schnittestellen (HTTP,CAN,..) speichern.
ich habe im "Hintergrund" ein System, welches Daten entgegen nimmt und diese intern verarbeitet.
Diese Daten können u.a. per HTTP-Request reinkommen. Aber auch andere Wege sollen möglich sein.
Ich habe natürlich auch ein paar Klassen mit Eigenschaften usw. Diese Eigenschaften möchte ich nun immer auf den richtigen Weg aufbereiten und das das Hintergrundsystem schicken. z.B. per HTTP-Request.
Allerdings weiß ich nicht, wie ich dies elegant designen kann. Ich habe mir gedacht, dass z.B. eine Connector-interface mit einer "create()" Methode erstellen kann und davon dann Unterklassen "HTTPConnector" usw.
Meine eigentlichen Klassen mit den Eigenschaften sollten dann z.B. HTTPConnector impementieren.
Dann müsste ich natürlich die create()-Methode auf den "HTTP-Fall" anpassen.
Was ist aber nun wenn ich von HTTP auf einen CAN-Bus wechseln möchte? Dann muss ich alle create()-Methoden löschen bzw neu erstellen. "Schnell mal hin und her" wechseln klappt dann nicht. Ich müsste dann immer einen Teil vom Code auskommentiert haben?!
Ein anderer Weg, der mir einfällt wäre das ich in den HTTPConnector eine Methode ala "create(MeineKlasse mk)" schreibe und das halt mehrmals und für jede einzelne Klasse dann einen angepassten Methodenrumpf.
Dies kommt mir aber nicht sonderlich elegeant vor, da die Klassen-Logik dann teilweise im HTTPConnector landet..
Ich hoffe Ihr konntet verstehen was ich meinte...
Sehr allgemein ausgedrückt:
Ich will Objekt A,B,C (jeweils unterschiedliche Klassen) über verschiedene Schnittestellen (HTTP,CAN,..) speichern.