Jump to content

History of GOOP

From LabVIEW Wiki
Revision as of 17:20, 14 May 2014 by Crelf (talk | contribs) (Reformatted, added headings for other GOOP implementations)

V I Engineering VISTA Class Generator

Endevo GOOP and the GOOP Development Suite

An excerpt from an OpenG discussion forum posting from Mattias Ericsson (Endevo project leader and main developer of the GOOP2, Wizard 2 and 3) to Jim Kring on: Tue 01 of Jul, 2003
The GOOP history began back in 1994 when Jörgen Jehander (one of the founders of Endevo) developed the first GOOP, actually taking advantage of his background as a C++ programmer and found a way of implementing OO in LabVIEW. This was a genuine LabVIEW implementation of the GOOP. There existed no Wizard back then. During 1994 and 1997 the GOOP went through many changes, especially the attribute synchronization and reference handling.

In 1997, a GOOP course, "LabVIEW System Design with GOOP" was held for the first time in Sweden and been held ever since and has also just recently started in the US.

In 1998-99 a cooperation began between Jörgen Jehander and Stepan Rhia from NI which started to developed the GOOP (the CIN based). The design was made both by Jörgen and Stepan, but it was Stepan who implemented both the CIN and the _goopsup.llb (included in LabVIEW 6 in vi.lib/platform). The reason why there is a CIN and not a LabVIEW implementation is that back then the performance was better with a CIN, but when LabVIEW 6 was launched (which has a much improved memory management) the benifits of using a CIN is gone. The GOOP Wizard 1.0, which might be download from ni.com, was developed in 1999 both by Jörgen and Stepan.

In 2002, Endevo launched a new GOOP Wizard 2, a new tool for creating and editing GOOP classes. This is not a new implementation of GOOP itself, but is only an improved Wizard with a lot of editing functionallity and also build-in icon generation. This Wizard is not distributed by NI, but may be bought from the Endevo homepage.

In 2003, a new GOOP, called GOOP2, is launched which has full support for inheritance (method and attribute inheritance, virtual methods and also static attributes) together with a new Wizard, the GOOP Wizard 3. This is sold as a new toolkit, GOOP Inheritance Toolkit. This new GOOP2 is a genuine LabVIEW implementation (no CIN, DLL or anything strange).

OpenG OpenGOOP

SciWare GOOP Developer

DataAct dqGOOP

See Also