Content deleted Content added
m Reverted edits by 217.205.250.130 (talk) to last version by Bluemoose |
VulcanSphere (talk | contribs) m Adding #ShortDescription #Computing #Solaris #Unix #VulcanSphere |
||
(36 intermediate revisions by 25 users not shown) | |||
Line 1:
{{Short description|Distributed computing project by Sun Microsystems}}
'''Distributed Objects Everywhere''' ('''DOE''') was a long-running [[Sun Microsystems]] project to build a [[distributed computing]] environment based on the [[CORBA]] system in the
== Background ==
In the early 1990s the
It seemed that the proper split of duties would be to have a cooperative set of objects,
Oddly, the differences between any two [[programming language]]s on a single platform was almost as great. Each language had its own format for passing parameters into [[procedure call]]s, 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 [[minicomputer]]s 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.
Extending these systems to support [[remote procedure call]]s behind the scenes was seen as a natural extension, and solution to the client/server programming problem. At the time there were a number of major projects to delver 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.▼
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.
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.▼
▲Extending these systems to support [[remote procedure call]]s behind the scenes was seen as a natural
== Spring, DOE, OpenStep, NEO ==
A bigger problem for Sun is that they had no integrated desktop object programming solution. Although [[C++]] was common, their own SunView and Solaris operating systems were all "plain C" based. In order to supply a comprehensive and flexible object programming solution, Sun turned to OpenStep. The idea was to have OpenStep programs calling DOE objects on their servers, providing a backoffice-to-frontoffice solution on Sun machines. OpenStep was only released in 1993, further delaying the project.▼
▲Sun's solution was based on work in their [[Spring (operating system)|Spring]] operating system, which used intercommunicating objects for almost all programming tasks. Modifying this to work under a
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)|Solaris]]) operating system and associated [[SunView]] and [[X Window System|X]] window systems were 'plain C' based, while their newer [[NeWS]] windowing environment was based on a network-extensible object oriented dialect of [[PostScript]].
▲
By the time DOE, now known as NEO, was released in 1995,<ref>{{cite press release
|publisher=Sun Microsystems, Inc.
|date=September 20, 1995
|url=http://www.sun.com/smi/Press/sunflash/1995-09/sunflash.950920.1420.xml
|archiveurl=https://web.archive.org/web/20070311022126/http://www.sun.com/smi/Press/sunflash/1995-09/sunflash.950920.1420.xml
|archivedate=2007-03-11
|title=SunSoft Introduces NEO, the Industry's First Complete Networked Object Computing Environment
|accessdate=2006-12-13
}}</ref> Sun had already moved on to [[Java (programming language)|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 the "Joe" framework,<ref>{{cite press release
|publisher=Sun Microsystems, Inc.
|date=March 26, 1996
|url=http://www.sun.com/smi/Press/sunflash/1996-03/sunflash.960326.13870.xml
|archiveurl=https://web.archive.org/web/20070320052957/http://www.sun.com/smi/Press/sunflash/1996-03/sunflash.960326.13870.xml
|archivedate=2007-03-20
|title=Sun Announces Product that Connects Java to Business Applications
|accessdate=2006-12-13
}}</ref> but it saw little use. Components of NEO and Joe were eventually subsumed into [[Enterprise JavaBeans]].<ref>{{cite web
|url=http://sunsite.uakom.sk/sunworldonline/swol-11-1997/swol-11-neo.html
|title=Goodbye NEO, hello Enterprise Java Beans
|accessdate=2013-05-01
|author=Robert McMillan
|author2=Niall McKay
|date=November 14, 1997
|work=SunWorld
}}</ref>
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.{{editorializing?|date=March 2011}} 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 faded, largely replaced by lightweight GUIs based on [[HTML]] and [[JavaScript]] ("[[Browser User Interface]]s").
==References==
{{Reflist}}
==External links==
* {{cite journal
|last1=Shah |first1=Rawn
|date=1996-06-01 |df=mdy
|url=https://www.infoworld.com/article/2077168/distributed-object-computing-with-joe-and-neo.html
|title=Distributed Object Computing with Joe and NEO
|journal=[[JavaWorld]]
|accessdate=2020-07-15
}}
[[Category:Common Object Request Broker Architecture]]
[[Category:Object-oriented programming]]
[[Category:Application programming interfaces]]
[[Category:Sun Microsystems software]]
[[Category:Vaporware]]
|