Ich baute eine Bibliothek, die in Plugins für eine Anwendung verwendet wird.
Diese Bibliothek enthält einen Singleton (ich weiß, Singletons sind hier nicht beliebt und ich hätte keinen benutzt, wenn es einen Weg gab).
Jetzt ist meine Frage:Singleton und verschiedene Bibliotheksversionen
Was passiert, wenn zwei Plugins mit verschiedenen Versionen der Bibliothek erstellt wurden?
- Ist das nur ein Problem, wenn sich die Singleton-Klasse geändert hat?
- hinzugefügt Methoden/Entfernte Methoden/Geändert Signaturen/Implementierung ändert
- Oder ist es immer ein Problem?
bearbeiten: von Plugins, die ich auf gemeinsam genutzte Objekte beziehe mich auf die zur Laufzeit geladen werden. Grundsätzlich erlaubt die Anwendung das Exportieren von Klassen mit einem Makro mit bekannten Basisklassen. Nach dem Laden der Bibliothek mit den Plugin-Klassen kann der Benutzer diese Plugins (die exportierten Klassen) instanziieren. Diese Basisklassen definieren nur verschiedene Arten von Plugins. I.e. Plugins, die sich auf Interaktion, Visualisierung usw. auswirken.
Zu viele Variablen. Beginnen Sie, sich zu verengen, indem Sie beschreiben, was Sie mit Plug-in meinen. – user4581301
Ich habe die Frage aktualisiert. Ich versuche, die Frage allgemein zu halten, aber wenn die Antwort stark vom Kontext abhängt, kann ich auf die Details eingehen. –