Development:Anforderungen Global Schnittstellen
Zur Navigation springen
Zur Suche springen
| Themengebiete |
|---|
| Für Performanceverbesserung: Vorbereitung darauf, intern zur Datenweitergabe (also "Addressierung") Enums o.ä. statt den "Adernamen" zu verwenden, um teure Stringvergleiche zu vermeiden. Strings sollten nur bei der Abonnierung von eingehenden Daten o.ä. sowie bei der Netzwerkkommunikation verwendet werden. |
| Wert bei der Datenübertragung Schnittstelle sollte ein komplexer Datentyp werden, der schlank gestaltet sein muss (Performance), aber Platz für Erweiterungen bietet (Flags, Daten zum Blinken etc) |
| Fernsteuerung muss sich einklinken können in die Kommunikation zwischen Stelltisch und Relaisanlage
Überlegung: Fernsteuerung ist "Men in the middle", die erkennt, welche Daten zwischen Stelltisch und Relaisanlage ausgetauscht werden. Wenn alle Adern in den Leitungen schon vor der Datenübertragung festgelegt werden, kann man hier auch einen Editor platzieren, der z.B die Festlegung von Prioritäten bei der Datenübertragung o.ä. erlaubt. |
Zu überlegen
- Kompatibilitätsprüfung beim Verbinden zweier Schnittstellen (Schnittstelle definiert Leitungen von Gegenstelle als optional oder verpflichtend, Typprüfung)
Beschlüsse
- Leitungen sind typisiert (int, double, string). Ggf. werden auch structs benötigt (Blinken o.ä.). Zu prüfen: Soll Schnittstelle als template realisiert werden?
- Leitungen können zu einem Stecker zusammengefasst werden
- Leitungen zwischen zwei Schnittstellen können durchgeschaltet werden (ggf. auch skriptgesteuert aktivier/deaktivierbar, z.B. bei Weichen, die je nach Weichenlage in die eine oder andere Richtung durchschalten)
- Die ehemaligen Begriffe sendSignal bzw. teilweise auch Impuls werden durch den Begriff Ereignis ersetzt.