Objektorientiertes Programmieren mit LV
LV-Klassen erwecken den Eindruck eigentlich nichts anderes als eine Sammlung von SubVI zu sein. Eigentlich könnte man alles zu Fuß ohne Klasse erledigen. Dem ist nicht ganz so: es gibt halt die Vererbung und die Kapselung.
Genauso könnte man in textbasierten Sprachen objektorientiert Programmieren indem nur mit bestimmten Funktionen auf bestimmte Daten zurückgreift und niemals die 'Daten direkt benutzt. Alles eine Frage der Disziplin!?
Objektorientierte Programmierung ist aber nicht nur eine Frage des Stils, wobei die Klassen-Objekte bestimmte Programmierweisen erfordern (in LV als auch in Text) und gleichzeitig die Arbeitsweise erleichtern. Auch die Philosophie die hinter der Bedeutung der Objektorientierung steckt ist unterschiedlich. Diese ist aber auch bei den textbasierten Sprachen nicht ganz einheitlich. LVOOP ist da sicherlich etwas besonderes, weil es auch noch den Datenfluss umsetzt. Dennoch ist es auch mit LVOOP möglich, Klassen erst zur Laufzeit zu laden. Oder klassenspezifische Funktionen aufzurufen, wobei in dem Blockdiagramm dann nur das VI der Basisklasse steht und zur Laufzeit das jeweils spezifische VI aufgrund des Klasse des übergebenen Objektes aufgerufen wird. Die Klasse des übergebenen Objektes muss natürlich von der Basisklasse abgeleitet sein.
|