OOP mit VBA?

2 Antworten

Ich versuch dir das mal runter zu brechen.

Also OOP wie schon der Name sagt sind hier Objekte, also kleine Maschinchen die ihre Aufgabe erfüllen. Aus einer Klasse lässt sich ein Objekt abbilden, das wie eine Zahl oder ein String in eine Variable gespeichert wird.

Mit dem Namen der Variable lässt sich ein Objekt, das erstellt wurde ansprechen und auf die mit Public gekennzeichneten Methoden und Properties kann man zugreifen.

Damit ein Objekt erzeugt wird, gibt es einen Konstruktor, das ist eine spezielle Methode, die den Namen der Klasse trägt und das erzeugte Objekt z.B. mit übergebenen Parametern initialisiert.

Jetzt kommt der Clou, diese Methode kann mehrfach verwendet werden, in dem man gleiche Methoden mit dem Namen der Klasse mit unterschiedlichen Parametern bereitstellt, die dann das Objekt auf unterschiedliche weise "befüllt" (initialisiert)

Aber bis hier ist es noch kein OOP, es ist nämlich möglich eine Art Oberklasse zu erstellen, die aber kein konkretes Objekt darstellen kann aber als eine abstrakte Klasse zu verschiedenen Unterklassen mutieren (eine Klasse kann mit "inherits" von einer anderen Klasse alles übernehmen) kann, diese dann davon Eigenschaften und Methoden erbt.

Damit es spannender wird, diese Unterklassen können die geerbten Methoden "verbiegen" also überschreiben und z.B. was anderes machen als in der "Mutterklasse" vererbt wird.

Als gute Lektüre empfehle ich die Programmiervideos von Herrn Jörn Lovischach
https://www.youtube.com/channel/UCogSE6uiJyiL31IG-tlxBAw


Woher ich das weiß:Berufserfahrung – Softwareentewickler / Unternehmensberater bei CSDIT iR
Garfield0001 
Fragesteller
 22.09.2016, 21:08

Danke für deine Antwort. Das Video muss ich mir später ansehen. Hab bis zum WE keine Zeit :-(

Aber ... das ist die Theorie. Und dazu habe ich bereits schon Bücher gelesen und insoweit verstanden :-). Bei mir hakt es jetzt an der Umsetzung. Was (und vor allem: Warum) muss ich konkret machen, damit ich - zb bei Tic-Tac-Toe - 3 Spielsteine habe a 2 Farben die ich setzen, bewerten und verschieben kann (so kenne ich das mit dem Verschieben).
Oder Schach-Figuren, Dame, mein Slitherlink-Konstrukt (möchte ich in Excel machen; geht als solches) ...

0
geri3d  22.09.2016, 21:10
@Garfield0001

Ja sorry, alles Theorie. Konkret habe ich kein Beispiel für ein auf OOP basiertes Tic Tac Toe. Ich hab zwar mal eins in c# erstellt aber das geht an OOP vorbei.

1

Vielleichthilft Dir das Buch "Objektorientierte Programmierung mit Visual Basic 2008" von Manfred Schüttengruber.

Garfield0001 
Fragesteller
 06.10.2016, 16:29

muss ich mal schauen :-)

0