Re: Neue Eigenschaft für Image und Label
Zitat:
Natürlich kann man auch das Tag benutzen, dann ist das aber auch schon verbraucht und kann nicht notfalls für andere Zwecke benutzt werden. Es geht hier auch nicht so sehr um Vererbung, sondern eher um Wiederverwendung des Source-Codes. Siehe VCL. Manchmal ist es schon etwas schwierig, einen Vorfahren einer Komponente zu finden. Das ist nämlich fast nie ein TWinControl usw. |
Re: Neue Eigenschaft für Image und Label
Zitat:
|
Re: Neue Eigenschaft für Image und Label
Zitat:
|
Re: Neue Eigenschaft für Image und Label
WEnn ich allein in meinem Kämmerlein vor mich hin programmiere, dann kann ich Controls aufbohren und ableiten, wie ich lustig bin. Aber wenn ich in einem Team arbeite, geht das nicht so einfach, denn schließlich muss so eine Komponente ja auch installiert werden.
Wir haben eine feste Anzahl von Zusatzkomponenten, und wenn hier jemand auf die Idee käme, in seinem Code einfach mal ne neue Komponente zu entwickeln, dann darf er putzen gehen. Ich würde auch dazu tendieren, die zusätzlichen Eigenschaften über die Tag-Eigenschaft an ein Image anzuhängen. Tag ist zwar ein Integer, aber durchaus dazu gedacht, ein ganzes Objekt mit zu speichern. Man muss es nur im Code ordendlich dokumentieren. Und hansa, OOP beschränkt sich ja nicht auf die GUI. |
Re: Neue Eigenschaft für Image und Label
Zitat:
OOP ist nicht nur Vererbung. Stichwort: Komposistion, Aggregation usw. |
Re: Neue Eigenschaft für Image und Label
Zitat:
|
Re: Neue Eigenschaft für Image und Label
Ich möchte die Diskussion hier nicht unnötig ausweiten, aber ich ändere/erweitere Controls nur dann,
wenn mir keine andere Wahl bleibt. Controls (oder Komponenten ganz allgemein) sollten so programmiert werden, dass sie allgemeingültig in allen Anwendungen einsetzbar sind. Wenn man die Sache aus dem Blickwinkel MVC (Modell-View-Controller) anschaut, dann sieht man ganz klar, dass ein TImage zum Bereich View gehört. Dagegen gehört das property ausgewaehlt in den Bereich Modell bzw. Controller. ==> auch wenn aus OOP-Sicht die Vererbung als Lösung erscheint zeigen doch neuere Entwicklungen (MVC), dass man es so nicht abbilden sollte. |
Re: Neue Eigenschaft für Image und Label
ich sehe das ähnlich,
ich leite nur neue Komponenten ab, wenn meine Erweiterung Zugriff auf die Eigenschaften der Komponente benötigt (z.b. ich male selber auf dem Canvas der Kompo rum). Dient meine Erweiterung lediglich der Datenspeicherung, auf die das Hauptprogramm zugreifen will, erstelle ich mir eine unabhängige Klasse und benutze das Objects, Data bzw. Tag-Property um die Verknüpfung zur visuellen Komponente herzustellen. Gerade bei OpenSource-Programmen oder in der Team-Entwicklung ist es meiner Meinung ungünstig, immer wieder neue Komponenten wegen nicht-visueller Erweiterungen zu installieren/upzudaten. Mich stört es z.b., wenn ich ein fremdes Programm kompilieren will und erstmal 20 Komponenten installieren muss (teilweise erstmal suchen und downloaden), um das Projekt öffnen zu können. :wall: ich denke mal, wir könnten die Diskussion unendlich fortsetzen :) aber es sollten schon die Vor- und Nachteile diverser Vorgehensweisen erläutert werden...wann welches Verfahren sinnvoller ist, muss jeder selbst entscheiden. MFG Frank |
Re: Neue Eigenschaft für Image und Label
Zitat:
Das angesprochene MVC-Konzept ist doch schon ca. 25 Jahre alt, oder ? Zumindest kann von "neu" keine Rede sein. Hab gerade nachgeguckt : BP 7.0 ist laut Handbuch immerhin Jahrgang 92. Delphi 1 ist Copyright 1995. Ja, habe das alles noch. :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz