Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wrapper: Was ist das??? (https://www.delphipraxis.net/66042-wrapper-ist-das.html)

McMorton 23. Mär 2006 21:47


Wrapper: Was ist das???
 
Hallo.

Ich beschäftige mich momentan mit der objektorientierten Programmierung.
Da bei habe ich zwei für die Experten lächerliche Fragen:


Und zwar findet man immer wieder den Begriff "Wrapper-Klasse".

Leider finde ich als Anfänger nirgentwo weine Begrifssdefinition.
Wer kann mir mal erklären was das ist :?: :?:



Meine zweite Frage:

ich habe 2 Klassen:

1. Klasse hat eine procedure, in der ein Objekt erzeugt wird. Das Objekt wird dort auch erst mit: "var Objekt: Txyz" definiert. Die procedure ist virtual.

2 Klasse erbt von der ersten. Dort verwende ich die procedure mit override. Mit inherited wird der alte teil aufgerufen.
Gibt es nun eine Möglichkeit das Objekt was ich dort erstellt habe dier procedure bekannt zu machen?
Wenn ich es im Klassenkopf beschreibe geht es.
Habe da vermutlich das Prinzip von virtual nicht ganz verstanden.

Sorry, habe grad kein Beispiel zur Hand, um es deutlicher zu machen. Werde das morgen nachliefern.

Nicodius 23. Mär 2006 21:52

Re: Wrapper: Was ist das???
 
erstens darf ich dich auf den codex verweisen der lautet jede frage ein eigener thread


das zweite ist dass es heir eine suchfunktion gibt die bei mir bei der suche "Wrapper-Klasse" doch einiges ausspuckt ;)



grüße Nico

McMorton 23. Mär 2006 21:58

Re: Wrapper: Was ist das???
 
Hallo.

Sorry, in einem anderen Forum hatte ich jedesmal einen rüberbekommen, wenn ich 2 Threads erstellt hatte. War es daher gewöhnt. Sorry nochmal.


Ich finde zwar über die Suchfunktion jede Menge Beispiele, wie die Wrapper-Klasse verwendet wird.
Aber mir fehlt einfach die Erklärung was das ist.

Lemmy1 23. Mär 2006 22:01

Re: Wrapper: Was ist das???
 
Hi, :hi:


Ein Wrapper kapselt ein Klasse, d.h. er hat eigene Funktionen die aber im Prinzip nur alles an die Klasse (oder Klassen) dahinter weiterleitet.

Ein typisches Beispiel sind Klassen wie File aus dem Dot-Net Framework: File hat komfortable Funktion zum Arbeiten mit Dateien, leiten aber eigentlich nur alles an Betriebssystemfunktionen weiter.

Wrapper und Adapter sind (laut meinem Info-Professor) übrigens Synonyme.

Lemmy1 23. Mär 2006 22:04

Re: Wrapper: Was ist das???
 
Nachtrag: Wrapper/Adapter haben zwei positive Eigenschaften:
- Sie verbergen Komplexität, d.h. sie sind meist einfacher zu verwenden
- Sie verstecken Details, WIE bestimmte Dinge funktionieren. Dadurch kann man den Wrapper austauschen und das ganze z.B. mit einem anderen Betriebssystem, einer anderen Datenbank etc verwenden. Es gab doch mal so Gehversuche von Delphi in Linux...das wäre wohl ohne Wrapper nicht gegangen.

BlackJack 23. Mär 2006 22:20

Re: Wrapper: Was ist das???
 
zur 2. Frage: ich nehme an dass "var Objekt: Txyz" lokal in der 1. procedure definiert ist, oder? dann kannst du so direkt nicht auf diese variable zugreifen, lokale variablen sieht wirklich nur die procedure selber. damit die procedure numero 2 auch diese variable kennt, musst du sie entweder aus der 1. procedure mit einem out/var-parameter an die 2. übergeben, oder du deklarierst die variable nicht lokal in der procedure sondern als feld in der klasse. das wird auch wahrscheinlich sowieso besser sein, wenn auch die abgeerbte klasse auf die entsprechende variable zugreifen kann, denn dann ist diese variable ja offensichtlich nicht nur lokale für procedure 1 von bedeutung.

McMorton 27. Mär 2006 21:54

Re: Wrapper: Was ist das???
 
Danke für eure Antworten. Das hilft mir schonmal weiter.

(Sorry für die späte Antwort, hatte kein Internet)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:03 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