![]() |
AW: Interface-Unterstützung
@Uwe
Was ist denn an meinen Anforderungen speziell? Ich hätte gedacht, dass jeder, der intensiver Interfaces benutzt, über das gleiche Problem stolpert. Wenn eine Klasse mehrere Interfaces unterstützt, kann man das nicht mehr einfach über Vererbung abfrühstücken und müsste somit mindestens einige (oder sogar alle) Member neu implementieren. Das ist besonders bei Gettern und Settern nervig, weil dort ja i.d.R. eh nur in ein privates Feld geschrieben oder daraus gelesen wird. Und dann sollte das als Standardweg halt automatisch voreingestellt werden. Bei Bedarf kann man es dann ja immer noch ändern. Als Fazit würde ich mal ziehen, dass keiner zu doof ist ;-) und das Tool mal weiter basteln. |
AW: Interface-Unterstützung
Zitat:
![]() |
AW: Interface-Unterstützung
Zitat:
- Nur ein kleiner Bruchteil der Klassen implementiert mehr als ein Interface - Es gib kaum Setter. Kurzer Überblick über eines meiner Projekte: In 171 Interfaces gibt es 239 Properties. Davon haben 18 einen Setter. Die beschreibbaren Properties verteilen sich auf 8 Interfaces, von denen es jeweils nur eine Implementierung gibt. Eventuell liegt das Problem auch in einem unglücklich gewähltem Klassen-Design, das dich zu immer wiederkehrenden Anpassungen zwingt. Hast du ein praktisches Beispiel für die mehrfache Implementierung von Interfaces mit Settern? |
AW: Interface-Unterstützung
Meinen aktuellen Quelltext will ich hier nicht veröffentlichen.
Aber ich erstelle ein früheres Projekt noch einmal neu und überarbeite dabei gleich komplett das Klassendesign (schreibe Interfaces wie am Fließband ;-) ). Ausgehen tue ich dabei immer von Interfaces (Funktionalitäten). Die tatsächlichen Klassen sind hinter einer Factory versteckt, so dass die Businesslogik nur noch die Interfaces kennt und benutzt. Da es viele Überschneidungen der Funktionalitäten gibt, müssen mehrere Klassen auch mehrere Interfaces unterstützen. Ok, mag sein, dass mein Klassendesign schon etwas ausgefallen ist und mir diese IDE-Schwäche deshalb besonders auffällt. Aber stören würde mich das tatsächlich auch bei weniger Mehrfach-Interfaces. |
AW: Interface-Unterstützung
Danke für den Tip mit dem Interface. Ich habe bisher den MMX nur zur Anzeige der Methoden genommen.
Etwas off-topic aber ich bekomme das Bookmark 7 beim MMX nicht weg. Egal was ich in den Optionen einstelle. Angeblich stammt das aus 'Drop Bookmark on Start Search Position' ... Aber immer wenn ich rumpfrimmle kommt das Bookmark 7 obwohl es auf none steht in den Optionen. Kommt das bei dir auch? Zitat:
|
AW: Interface-Unterstützung
Zitat:
|
AW: Interface-Unterstützung
Danke. Uwe.
Plag dich nicht. Beizeiten. Es erscheint einfach ein Bookmark 7 und wenn ich MMX deinstalliere kommt es nicht mehr. Seit XE ist das so, egal mit welchem MMX. Es erscheint auch zufällig. Es erscheint dann auf jeden Fall wenn der MMX im Code rumpfrimmelt an der Stelle wo das passiert. Die Idee ist an sich ja nicht falsch. Ich muss noch rausfinden wenn es passiert. Es ist bspw. passiert wie in der Strukuranzeige des MMX oben das Interface über die Klasse gezogen hat. Dann hat der MMX ganz korrekt die Deklarationen durchgezogen und eine Bookmark platziert nämlich Bookmark 7 (default Einstellung für Search - an der ersten Fundstelle Positionieren). Ich schaue noch zuvor ob sich das Bookmark 7 ändert wenn dieses spezifische Bookmark auf bspw. 8 umstelle. Dann melde ich mich gerne mal. Bitte keinen Aufwand treiben. Danke nochmal für den Tip.:thumb: (* Ich bin schon sehr froh, dass überhaupt die Methoden usw... der Unit sauber strukturiert sehe*). Allein verwende ich eher sehr übersichtliche Anzahl von Codezeilen in Units, aber nicht so exzessiv sodass ich während des Debuggens zuviel in Einzeilern herumhüpfe und ich halt die aktuellen Prozeduren eher oben und nicht unten ala FIFO Queue, denn ich arbeite eher Bottom Up. Lieben Gruß Zitat:
|
AW: Interface-Unterstützung
Vielleicht noch ergänzend zum MMX:
![]() |
AW: Interface-Unterstützung
Danke
Zitat:
|
AW: Interface-Unterstützung
Ja, genau diese Funktionen sind an MMX sehr interessant. :thumb:
Mehr habe ich bei Interfaces auch noch nie gebraucht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz