![]() |
AW: Generics - Pro und Contra
Zitat:
|
AW: Generics - Pro und Contra
Man findet schon in der Hilfe einiges, z.B. so etwas:
![]() Und ansonsten ist das Grundprinzip ja immer das gleiche, aber es ist so ähnlich wie objektorientierte Programmierung. Es reicht nicht aus OOP um der OOP willen anzuwenden, sondern man muss auch so denken, wenn man Strukturen entwirft. Das gilt für Generics genauso. |
AW: Generics - Pro und Contra
Ich denke auch- In der reinen Benutzung ist bei Delphi eigentlich im Vergleich zu Java (Autoboxing ausgenommen, also sogar eigentlich besser als bei Java) oder C++ Templates genau gleich. Da kann man denke ich x-beliebige Lektüre nehmen.
Das "Hallo Welt" der Generics sind meistens wohl generische Stacks, also beispielsweise ein Integer oder Float-Stapel, je wie man grade lustig ist. |
AW: Generics - Pro und Contra
Ich benutze es auch im ORM. Hat ein Entity keine besonderen Anforderungen gibt es ein generisches Repository, das für's Laden verwendet wird. Also sowas in der Richtung:
Delphi-Quellcode:
gibt eben den Kunden mit der ID 1311 zurück
TEntityRepository.load<TKunde>(1311);
|
AW: Generics - Pro und Contra
Außerdem lassen sich schon coole Sachen basteln
![]() Hätte Delphi jetzt noch waschechte Lambda-Ausdrücke (wie seit Java 8 oder C++11) wäre man im siebten Himmel. |
AW: Generics - Pro und Contra
Zitat:
|
AW: Generics - Pro und Contra
Zitat:
@Günther: Und Type Inference, die über einen simplen einzelnen Parametertypen hinausgeht. |
AW: Generics - Pro und Contra
Danke Euch.
Ich werde auch bei Generics bleiben und zusätzlich mit Interfaces arbeiten (hatte ich schon länger vor) und sehe bei beiden einige Vorteile. Einzige Nachteile erscheinen mir, dass der Debugger mit den Generics etwas unkonventionell umgeht und bei XE3 wohl auch noch einige Bugs auftauchen können. |
AW: Generics - Pro und Contra
Zitat:
Aber ich möchte gerne diese Hürde überwinden. Was da rein technisch passiert ist mir schon halbwegs klar, nur komme ich ohne griffige Beispiele nicht so wirklich dahinter, wozu man das konkret brauchen könnte. Bspw. der Quellcodeschnipsel aus dem DocWiki:
Delphi-Quellcode:
Inwiefern kann sowas im richtigen Quelltext Anwendung finden?
type
TFoo<T: ICloneable> ... TTest1 = class(TObject, ICloneable) ... end; TError = class end; var X: TFoo<TTest1>; // TTest1 wird hier auf ICloneable-Unterstützung // zur Compilierzeit überprüft Wo sind die Vorteile gegenüber, ich sage mal, herkömmlichen Lösungen? Mit den meisten Design Pattern geht es mir ähnlich. Wenn ich das noch nicht selbst programmiert / implementiert habe, bleibt es nebulös im Hirn. :pale: Erst wenn ich versuche diese Pattern umzusetzen - und sei es mit simplen Beispielen wie Kaffeezubereitung ( ![]() |
AW: Generics - Pro und Contra
Drei Daumen hoch für das Buch! Das ist wirklich gut.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:17 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