Wrapper allgemein
-
Hi ich habe in einem thread hier gelesen, dass wenn einem nichts einfällt soll man einen wrapper für eine lib programmieren. wenn ich bei google nach wrapper suche kommt jede menge unnützes zeug, deswegen frag ich hier mal nach:
1. Was ist eigentlich ein Wrapper / wozu ?
2. Wie sieht die Vorgehensweise aus, wenn man einen programmieren will ?
3. Welche lib ist für den ersten Wrapper geeignet ?hoffe ihr koennt mir helfen.
-
Die Frage gab's erst letztens schonmal, oder? So würde ich das mit meiner Chat-umgangssprachlichen Definition von "Wrapper" erklären:
Eine Schicht eigener Code um vorhandenen drumrum - der den vorhandenen eben "wrapt". Beispiel: Du hast eine C-Bibliothek, etwa die SDL (http://www.libsdl.org), und willst, dass man sie in C++ komfortabler benutzen kann - also schreibst du Klassen drumrum. Ich würde z.B. die MFC einen Wrapper für die Windows API nennen.
Um bei der SDL zu bleiben: Vielleicht eine Klasse für Grafiken, die das ganze Resourcenmanagement über Konstruktoren/Destruktoren übernimmt. Oder Funktionen, die bei schweren Fehlern nicht nur Fehlercodes zurückgeben, sondern eine Exception schmeißen.
Sowas ergibt sich oft auch einfach, indem man mit einer C-Bibliothek arbeitet und alles, was man sonst doppelt tippen müsste, in eine eigene Funktion/Klasse auslagert. Du könntest also einfach ein kleines Spiel mit der SDL schreiben und nebenbei einen Wrapper entwickeln. So ist bei mir ein ganzer Haufen Klassen entstanden, die einem das Windows-Fenstermanagement erleichtern.Von der SDL habe ich ehrlich gesagt nur die Header überflogen, aber ich wollte als Beispiel nicht die Windows API nennen - die ist nämlich ein harter Brocken. Auch nicht schlecht wären vielleicht die C-Datei-Eingabe/Ausgabe-Funktionen aus <cstdio>, um die man schön eine Klasse schreiben kann, die einem fopen/fclose etc. abnimmt.
-
Hi, erstmal danke für deine antwort. gibt es auch eine andere geeignete lib, zu der ich einen wrapper schreiben könnte, denn mit spieleprogrammieren habe ich eigentlich nichts am hut ?
-
moin meister ...
zum Bleistift könntest Du die WIN32 API wrappen
Macht zwar wenig Sinn, weil MFC es schon macht, aber nicht jeder hat das Geld
für M$ Studio ...Interessant wird es dann wenn Du Nachrichtenreflektion einbauen willst
Um eigene wiederverwendbare Klassen zu implementieren, welche GUI-Elemente
erzeugen ...mfg
RB
-
Die Frage zu welcher Lib du einen Wrapper schreiben könntest, kannst du dir am besten beantworten! Was magst du denn gerne? Du sagst, mit Spielen willst du weniger am hut haben .. dann vielleicht eher mit Netzwerkapplikationen oder was ganz anderem! Google nach libs zu dem entsprechedem Thema und leg los!
Wer weiß, vielleicht nimmt der Libhersteller deinen Wrapper sogar mit auf seine Website und ihr werdet ein Team