INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

LVOOP im Kommen!



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

24.04.2010, 12:15
Beitrag #31

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
LVOOP im Kommen!
Code, wo du dich auskennst...
Na ja, eben mit OOP wird der Code übersichtlicher und deshalb einfacher zu debuggen und zu erweitern.

Noch was dazu - OOP eignet sich für größere Projekte, sagen wir mal ab 100 VIs. Deshalb gibt es auch nicht zu viele Beispiele dazu.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
24.04.2010, 13:30
Beitrag #32

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
LVOOP im Kommen!
Eugen, jetzt hast du wieder was angefangen ... Wacko

' schrieb:OOP eignet sich für größere Projekte, sagen wir mal ab 100 VIs. Deshalb gibt es auch nicht zu viele Beispiele dazu.
Wie darf ich das jetzt verstehen?

Meist du mit "eignet sich", dass es für kleine Projekte (als 100 VIs) nicht effizient ist, OOP zu machen?

Die gesamte Applikation hat also (sagen wir mal) 100 (sebst geschriebene?) VI's. Sollen diese 100 VIs in einer Klasse zusammengefasst werden? Oder sollen dann diese 100 VIs in z.B. 5 Klassen zu je 20 VIs aufgeteilt werden?

Oder hast du 100 VIs pro sinnvolles Modul gemeint?

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.04.2010, 13:50
Beitrag #33

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
LVOOP im Kommen!
Ich meine, dass man für schnelle Test-VIs lieber kein OOP anwenden sollte, wegen dem Aufwand. Kleinere Sachen dürfen schnell programmiert werden, und weil sie eben klein sind kann man immer noch überblicken. Bei großen Projekten (100 VIs war nur so grob und ungefähr geschätzt) will man bestimmt später etwas erweitern und Übersicht behalten, eventuell noch Teile des Projektes an andere Programmierer verteilen. Deshalb empfehle ich hier OOP anzuwenden und schön modular programmieren.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.04.2010, 15:32
Beitrag #34

abrissbirne Offline
LVF-Stammgast
***


Beiträge: 480
Registriert seit: Aug 2007

LV2009, LV2010
2007
EN

66123
Deutschland
LVOOP im Kommen!
' schrieb:Nein, das darf ich leider nicht. O
Nichts geheimes, nur den prinzipiellen Aufbau wie du ihn geschildert hast (Producer/Consumer...).Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.04.2010, 15:54 (Dieser Beitrag wurde zuletzt bearbeitet: 24.04.2010 15:55 von macmarvin.)
Beitrag #35

macmarvin Offline
CLA
***


Beiträge: 445
Registriert seit: Sep 2006

2014
2004
EN

81373
Deutschland
LVOOP im Kommen!
' schrieb:Mir ist noch ein Grund eingefallen, warum man (LV)OOP machen sollte: Durch OOP wird es nämlich praktisch unmöglich, mal schnell so zwischenrein den Sourcecode "anzupassen".

Das ist einer der Punkte den wir u.a. bei der Entscheidung gegen LVOOP als Messages hatten.
Wenn's mal schnell gehen _muss_, hat sich die Methode:
Zusatzinfos an die Message per Variantattribute anhängen und bei dem einen Sender, der's braucht, mitschicken und den Empfänger passend erweitern. Dabei sollte natürlich die Schnittstelle abwärtskompatibel bleiben und bestenfalls habe ich dabei nur 2 Stellen die sich im gesamten Projekt geändert haben.
Solange solche Q&D Hacks nicht ausarten, finde ich es OK, nicht schön aber OK Rolleyes
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.04.2010, 08:26 (Dieser Beitrag wurde zuletzt bearbeitet: 25.04.2010 08:50 von cb.)
Beitrag #36

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
LVOOP im Kommen!
' schrieb:Mir ist noch ein Grund eingefallen, warum man (LV)OOP machen sollte: Durch OOP wird es nämlich praktisch unmöglich, mal schnell so zwischenrein den Sourcecode "anzupassen". Oft möchte der Kunde ("plötzlich") ein neues Feature. Dann ist der Programmierer ohne OOP dazu verleitet: "Ach guck, da oben rechts am FP ist noch klein bischen Platz. Und im BD, das ziehen wir auf, machen wir noch ein SR (zu den mittlerweile 18 anderen) und das mit den Wires bekommst du ja auch noch hin". Und ruckzuck hat man ein BD wo nur noch ich mich auskenne.

lol ... na dann habt mal Spass mit eurem Code, die Kunden werdet ihr mit der Einstellung nach und nach verlieren. Wenn es wirklich um das 18. SR geht dass du nun noch einpflegen musst, dann ist vorher schon was schief gelaufen, dann liegt es nicht an der kleinen Änderung dass dein Code unübersichtlich ist ...

Es geht beim Programmieren nicht darum dass sich der Programmierer an seinem Code ergötzen kann, es geht darum dass der Kunde/Benutzer der Software ein Werkzeug bekommt, dass ihm seine Arbeit erleichtert und z.B. total langweilige, immer wiederkehrende Aufgaben automatisiert.

Die Erweiterbarkeit der Software ist immer ein Kompromiss: wählt man seinen Ansatz so groß dass man später leicht erweitern kann hat man am Anfang des Projektes mehr Arbeit, die der Kunde entsprechend bezahlen muss, wozu er u.U. nicht bereit ist, weil ihm das zu teuer erscheint. Wählt man den Ansatz zu klein gibt's später Ärger weil jede popelige Änderung gleich einen riesen Aufwand nach sich zieht.

Und wenn in meinem BD kein Platz mehr ist um eine weiter Funktion einzufügen, dann nehm ich immer noch ein Sub-VISmile

zu der Behauptung dass ab 100 VIs ein Projekt sinnvollerweise mit LVOOP entwickelt wird sag ich jetz mal nix, das würd in einen handfesten Streit ausarten, glaub ich ... bzw. ich müsste mich fragen, wie meine 1000+ VIs Applikationen die ich seit Jahren (im Team) schreibe, pflege und erweitere überhaupt funktionieren können ... muss wohl ein Wunder sein ...

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.04.2010, 07:53
Beitrag #37

abrissbirne Offline
LVF-Stammgast
***


Beiträge: 480
Registriert seit: Aug 2007

LV2009, LV2010
2007
EN

66123
Deutschland
LVOOP im Kommen!
Ich finde es immer wieder lustig, dass ausschließlich LabVIEW Programmierer gegen OOP propagieren. Es ist und bleibt ein erfolgreiches Konzept, welches in anderen Programmiersprachen mit Vorliebe genutzt wird. Das LabVIEW sich in die OOP-fähigen Programmiersprachen einreiht finde ich super. Es wird niemand gezwungen OOP anzuwenden. Es ist langweilig das bei jedem LVOOP Post hier im Forum irgendwann, irgendjemand etwas negatives an OOP sucht.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.04.2010, 11:00
Beitrag #38

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
LVOOP im Kommen!
' schrieb:Ich finde es immer wieder lustig, dass ausschließlich LabVIEW Programmierer gegen OOP propagieren. Es ist und bleibt ein erfolgreiches Konzept, welches in anderen Programmiersprachen mit Vorliebe genutzt wird. Das LabVIEW sich in die OOP-fähigen Programmiersprachen einreiht finde ich super. Es wird niemand gezwungen OOP anzuwenden. Es ist langweilig das bei jedem LVOOP Post hier im Forum irgendwann, irgendjemand etwas negatives an OOP sucht.

Ich hab überhaupt nichts gegen OOP einzuwenden. Ich finde OOP super! Und sobald LVOOP meine Entwicklungs-Arbeit vereinfacht werd ich es definitiv nutzen. Ich hab auch niemals OOP kritisiert, meine Kritik richtet sich ausschließlich gegen das was NI uns (mir!?) als Super-Duper-Wohlfühl-Feature-das-ab-sofort-alle-nutzen-müssen-wenn-sie-coole-Programmiere-sein-wollen verkaufen will. In meinen Augen verdient LVOOP den Anhang OOP einfach nicht.

Meine Kritik ist nicht dazu da irgend jemand nieder zu machen - auch wenn sie zuweilen schaft formuliert ist - sie soll dazu dienen, dieses Feature in eine Richtung weiterzuentwickeln, damit ein echter Mehrwert (z.B. durch einen Zeitvorteil, weil bestimmte wiederkehrende Aufgaben schneller und einfacher erledigt werden können) daraus entsteht.

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.04.2010, 20:46
Beitrag #39

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
LVOOP im Kommen!
Aber du stimmst zu, dass ein Objekt mehr Features anbietet als ein Cluster? Zumindest muss dein BD nicht riesig sein, wenn du eine größere Objekt-Konstante dort einfügst, was man bei einer Cluster-Konstante nur bedingt machen kann.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.04.2010, 08:08
Beitrag #40

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
LVOOP im Kommen!
' schrieb:Aber du stimmst zu, dass ein Objekt mehr Features anbietet als ein Cluster? Zumindest muss dein BD nicht riesig sein, wenn du eine größere Objekt-Konstante dort einfügst, was man bei einer Cluster-Konstante nur bedingt machen kann.

klar bietet es mehr Features, aber LVOOP ist halt in meinen Augen noch lang nicht fertig. Wie gesagt: sobald ich da mit (ggf. am Anfang auch "unter Schmerzen") eine MFC-like Struktur aufbauen kann, auf der alle meine zukünftigen Projekte aufbauen werd ich zum glühenden Anhänger von LVOOP werdenSmile

Ich hol mal aus:
ATM beginne ich ein neues Projekt so: ich hab ein Projekt-Template das aus ca 200 (selbstgeschriebenen) VIs besteht, ständig verbessert wird und viele Features enthält, die ich eig. in jedem Projekt verwende. Ich hab ein Tool, das diese Projekt-Template öffnet und die ganze VI-Hierarchie meines Templates unter neuem Namen in einen neuen Ordner kopiert. D.h. aber auch: jedesmal wenn ich ein neues Projekt beginne werden erstmal 200 VIs kopiert, um anschließend leicht modifiziert zu werden. Wenn ich etwas von den Features die mitkopiert wurden ganz bestimmt nicht brauche kann ich das dann aus dem Code rausnehmen, das geht deutlich schneller als wenn ich ein fehlendes Feature dazuprogrammieren würde.

Meine Idee ist es - diesen ganzen Mist mit der Kopiererei (geht halt ATM noch nicht anders) - durch LVOOP zu ersetzen, sprich ich hab irgendwo meine OOP-Project LIB, die zieh ich in ein neues Projekt, leite von meinen Projekt-Basis-Klassen die entsprechenden Klassen für das neue Projekt ab und feddicht ist die Laube. Sollte ich mal einen Bug in einer Basis-Klasse finden fixe ich den eben und alle Projekte, die darauf aufsetzen sind gleich mit gefixt ...

Wenn ich sowas realisieren kann, dann spart mir LVOOP eine MEEEEEEENNGE Zeit - und da bei mir Zeit = Geld ist bringt mir das einen echten Wettbewerbsvorteil => ich werd es seeeeeehr lieb haben:)und so lang das halt noch nicht der Fall ist fluch ich "as laut as possible" über LVOOP in der Hoffnung dass etwas davon an die Ohren von NI dringt und das Feature so weiterentwickelt wird dass ich Geld damit verdienen kannSmile

Was man zur Zeit mit LVOOP machen kann, ist dass man einzelne Funktionen mit LVOOP implementieren kann. Aber sein Projekt entwickelt man eig. nach wie vor im "alten Stil". Die sinnvolle Nutzung von OOP im Projekt ist auf einige, wenige Fälle beschränkt, weil es ATM in meinen Augen (noch) sowas wie ein in Cluster mit ein paar intelligenten Features ist. Dabei mag ich gar nicht abstreiten, dass diese Features für den ein oder anderen mehr geschätzt werden als von mirWink. Aber für mich ist es ATM einfach nur eine Geschmacks-Frage ob man LVOOP mit im Projekt verwendet und sich darüber zu streiten ob es Sinn macht oder nicht, ist wie ein Streit ob man Himbeer-Marmelade roter schmeckt als Erdbeere.Big Grin

Ich hab auch absolut nix gegen Aussagen wie "ich nutze es gerne" oder so, wo mir nur immer wieder der Kragen platzt ist, wenn LVOOP so beworben wird (von Nutzern oder von NI) als wäre es JETZT schon eine tragfähige Lösung für größere Projekte und noch roter seh ich wenn mir jemand erklären will es wäre notwendig für ein Projekt > 100 VIs. Letztere Aussage werte ich so wie den besonderen Geschmack der Carmagnola-minzeBig Grin

Klar, NI versucht die Entwickler zu motovieren es zu nutzen, darum kommen solche Aussagen wie "ab einer Projekt-Größe von 100 VIs sinnvoll" oder "LVOOP ist im kommen". Schließlich will NI Feedback darüber wie es genutzt wird damit es weiter entwickelt werden kann. Aber das ist nicht mein Job. Wenn NI eine Studie haben will, wie man es sinnvoll einsetzen und weiterentwickeln kann, dann sollen sie mich engagieren - mach ich gerne, und weil es mir später dann hoffentlich von großem Nutzen sein wird geh ich sogar mit dem Stundensatz runterBig Grin- aber ich werd mich nicht zum unbezahlten Beta-Tester machen lassen und ein Feature in der Produktion einsetzen dass nicht hält was der Name und die Werbung verspricht.

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  CS++ - A LVOOP Actor based Framework BNT 18 30.328 14.03.2015 14:26
Letzter Beitrag: BNT
  LVOOP und DAQmx - Resource ist reserviert Sundypha 2 10.415 13.08.2012 12:42
Letzter Beitrag: Sundypha
  Neuling, was bringen mir Klassen, LVOOP dali4u 6 18.381 24.02.2012 13:40
Letzter Beitrag: Kiesch
  LVOOP - wann wird Kopie erstellt? Kiesch 7 14.890 21.10.2011 14:23
Letzter Beitrag: Kiesch
Information LVOOP-Anfänger, Kommentar zu Programm Martin Heller 11 25.249 09.03.2011 14:32
Letzter Beitrag: Martin Heller
  LVOOP-Beispiel - Stimmt das so? Matze 12 26.577 29.06.2010 13:14
Letzter Beitrag: jg

Gehe zu: