- Distributed Objects Everywhere
Distributed Objects Everywhere (DOE) was a long-running Sun Microsystems project to build a distributed computing environment based on the CORBA system in the 'back end' and OpenStep as the user interface. First started in 1990 and announced soon thereafter, it remained vaporware for many years before it was finally released as NEO in 1995. It was sold for only a short period before being dropped (along with OpenStep) in 1996. In its place is what is today known as Enterprise JavaBeans.
In the early 1990s the 'next big thing' in computing was to use desktop microcomputers to display and edit data being provided by mainframes and minicomputers. Although a number of methods for this sort of access already existed, the division of labor was not at all even. For instance, SQL required the workstation to download huge data sets and then process them locally, whereas use of terminal emulators left all of the work to the server and provided no GUI.
It seemed that the proper split of duties would be to have a cooperative set of objects, the workstation being responsible for display and user interaction, with processing on the server. Standing in the way of this sort of solution was the massive differences in operating systems and programming languages between platforms. While it might be possible to build such a system that would work on any one combination of workstation and server, the same solution would not work on any other system.
Oddly, the differences between any two programming languages on a single platform was almost as great. Each language had its own format for passing parameters into procedure calls, the file formats that they generated were often quite different. In general terms, it was not always possible to write different portions of a program in different languages, although doing so often has real utility. The problem was not so acute on minicomputers and mainframes where the vendor often specified standards for their libraries, but on microcomputers the programming systems were generally delivered by a variety of 3rd party companies with no interest in standardization.
Nevertheless this problem was being addressed in the early 1990s through the introduction of various shared library systems. These were actually intended to ease resource use on smaller platforms, by allowing a number of programs using a common resource, like the GUI, to share a single copy of code instead of each loading a separate copy into memory. As a side effect of being able to be called from many programs, these systems also defined a standard way to call them, using an interface definition language, or IDL, to allow any language on the platform to understand the code inside the library.
Extending these systems to support remote procedure calls behind the scenes was seen as a natural evolution, providing a solution to the client/server programming problem. At the time there were a number of major projects to deliver such a system, including IBM's System Object Model (SOM/DSOM), NeXT's Portable Distributed Objects, Microsoft's Component Object Model (COM/DCOM) and many CORBA flavors. Sun, attempting to position itself as the future IBM in terms of backoffice support, felt they had to attack this market as well.
Spring, DOE, OpenStep, NEO
Sun's solution was based on work in their Spring operating system, which used intercommunicating objects for almost all programming tasks. Modifying this to work under a 'traditional' Unix like Solaris was not all that difficult, although Unix makes the assumption that all programs run locally, and an interface for remote access had to be added. For this, DOE added an object request broker (ORB) that ran on the backoffice servers, listening for DOE requests and handing them off to the proper program to be handled. During development, CORBA became a key buzzword in the industry. This prompted a delay while the ORB was re-engineered for CORBA support. Under the CORBA model, different objects, like those from DOE or SOM, would be able to interact by sharing a common interface.
A bigger problem for Sun is that they had no integrated desktop object programming solution. Although C++ object libraries were becoming common on some platforms, their own SunOS (later known as Solaris) operating system and associated SunView and X window systems were 'plain C' based. In order to supply a comprehensive and flexible object programming solution, Sun turned to NeXT and the two developed OpenStep. The idea was to have OpenStep programs calling DOE objects on Sun servers, providing a backoffice-to-frontoffice solution on Sun machines. OpenStep was not released until 1993, further delaying the project.
By the time DOE, now known as NEO, was released in 1995, Sun had already moved on to Java as their next big thing. Java was now the GUI of choice for client-side applications, and Sun's OpenStep plans were quietly dropped (see Lighthouse Design). NEO was re-positioned as a Java system with the introduction of Joe, but it saw little use.
Although distributed objects, and CORBA in particular, were the 'next big thing' in the early 1990s, by the second half of the decade interest in them had essentially disappeared.[POV? ] Web-based applications running entirely on the server became the new 'next big thing', and the need for a powerful display system on the client-side was simply dropped and replaced by lightweight GUIs based on HTML.
- ^ "SUNSOFT INTRODUCES NEO, THE INDUSTRY'S FIRST COMPLETE NETWORKED OBJECT COMPUTING ENVIRONMENT" (Press release). Sun Microsystems, Inc.. September 20, 1995. http://www.sun.com/smi/Press/sunflash/1995-09/sunflash.950920.1420.xml. Retrieved 2006-12-13.
- ^ "SUN ANNOUNCES PRODUCT THAT CONNECTS JAVA TO BUSINESS APPLICATIONS" (Press release). Sun Microsystems, Inc.. March 26, 1996. http://www.sun.com/smi/Press/sunflash/1996-03/sunflash.960326.13870.xml. Retrieved 2006-12-13.
Shah, Rawn (June 1, 1996). "Distributed Object Computing with Joe and NEO". JavaWorld. http://www.javaworld.com/javaworld/jw-06-1996/jw-06-exceptions.html. Retrieved 2006-12-13.
Wikimedia Foundation. 2010.
Look at other dictionaries:
Portable Distributed Objects — Portable Distributed Objects, or PDO, is a programming API for creating object oriented code that can be executed remotely on a network of computers. It was created by NeXT Computer, Inc. using their OpenStep system, whose use of Objective C made … Wikipedia
Library (computing) — This article is about the programming concept. For Windows 7 Libraries, see Features new to Windows 7#Libraries. Illustration of an application which uses libvorbisfile to play an Ogg Vorbis file In computer science, a library is a collection of… … Wikipedia
Lighthouse Design — Ltd. was an American software company that operated from 1989 to 1996. Lighthouse developed software for NeXT computers running the NeXTSTEP operating system. The company was founded in 1989 by Alan Chung, Roger Rosner, Jonathan Schwartz, Kevin… … Wikipedia
IBM System Object Model — For the similarly named executable file format in the HP UX operating system, see System Object Model (file format) In computing, the System Object Model (SOM) is an object oriented shared library system developed by IBM. A distributed version… … Wikipedia
DOE — abbr. Depends On Experience abbr. Distributed Objects Everywhere (Sun) comp. abbr. Distributed Objects Everywhere acronym Department of Energy (US Government) … United dictionary of abbreviations and acronyms
Lighthouse Design — Ltd. war ein US amerikanisches Softwareunternehmen, das von 1989 bis 1996 existierte. Die Firma entwickelte Software für NeXT Computer, die unter dem Betriebssystem NEXTSTEP liefen. Lighthouse wurde 1989 von Alan Chung, Roger Rosner, Jonathan… … Deutsch Wikipedia
Doe — may refer to: Contents 1 Music 2 Science, technology, and medicine 3 Law … Wikipedia
Neo — is a prefix from the ancient Greek word for young neos (νέος) which derived from the Proto Indo European word for new néwos . Neo may refer to: Neo (The Matrix), the protagonist in the Matrix film series Neo (Marvel Comics species), a fictional… … Wikipedia
DOE — Department Of Education (Governmental » US Government) * Department Of Energy (Governmental » Military) * Department Of Energy (Medical » Human Genome) * Department Of Energy (Academic & Science » Ocean Science) * Department Of Energy… … Abbreviations dictionary
DOE — • U.S. Department of Energy USA Energieministerium • Distributed Objects Everywhere Sun Entwicklungsrahmen für CORBA Produkte • Depends On Experience … Acronyms