Interesting People mailing list archives
IP: A father of object oriented programming compares Java and .NET
From: Dave Farber <dave () farber net>
Date: Tue, 26 Mar 2002 07:55:38 -0500
------ Forwarded Message From: Nathan Cochrane <ncochrane () theage fairfax com au> Organization: The Age newspaper Reply-To: ncochrane () theage fairfax com au Date: Tue, 26 Mar 2002 17:09:33 +1100 To: Dave Farber <dave () farber net> Subject: A father of object oriented programming compares Java and .NET Hi Dave I spoke with Rational chief scientist, Grady Booch, last week. Grady is well known for his work in object oriented programming and the unified modelling language. Basically, he says software programming is terribly hard, and even though .NET helps, it is still going to be hard. So hard, even Microsoft uses Java Enterprise where the need arises, he says. Code-crunching the Booch way http://www.theage.com.au/articles/2002/03/26/1017004757420.html By Nathan Cochrane March 26 2002 Next Object oriented programming is passe. Programmers must think in "aspects" as demands for more complex systems increase. Grady Booch, one of the fathers of object oriented programming (OOP) and co-founder of Unified Modelling Language (UML), is excited by research into the next phase of software engineering, Aspect Oriented Programming (AOP). The man who invented the Booch Method, in which a program is visualised before the code-writing begins, says more research is needed before aspects can be properly expressed. Booch, who is chief scientist of Rational Software, a maker of tools for programmers, says: "Where I am particularly enamoured, and where energy is being spent both inside Rational and outside, is the mapping of UML to abstracts." "If I were to look into my crystal ball in terms of the next generation of programming languages, my guess is it would be an aspect-oriented language, and my further guess is the UML itself could be a reasonable aspect-oriented language. "We are almost at the point where you can have executable UML." Modelling reveals problems at the blueprint stage before code blocks are assembled, reducing development time and easing maintenance when the original programmers may no longer be available. OOP is an approach that blends data and functions in a self-contained module, creating a code brick that snaps together with others - much like Lego blocks - to make a program. An object inherits variables and methods defined in other objects, thereby making code easier to adapt to new circumstances because core functions have to be written only once. Just as OOP languages such as C++ mostly displaced the earlier spaghetti code of procedural languages such as Pascal, aspects implement functions that cross-cut a program's objects. These may include security, memory optimisation and exception handling - for example, what to do when a program crashes - according to researchers at Xerox-PARC. Booch and the researchers say AOP makes it easier to program and maintain complex systems because conceptualisation makes software both efficient and easy to understand. Booch, however, disagrees with fellow AOP proponents Gregor Kiczales from Xerox-PARC and Charles Simonyi from Microsoft about future directions. He believes complexity hasn't been shifted far enough away from the programmer, a process called "abstraction". An area where Microsoft is aiding abstraction, Booch says, is through its .NET Framework and Web services for distributed computing. Web Service programs run either on stand-alone networks or across the wider Internet, grouping data and program logic from a variety of sources including old mainframes, databases, the Net and modern applications. Web services use the eXtensible Markup Language (XML), Simple Object Access Protocol (SOAP) for sending program messages across the Web, Web Service Description Language (WSDL) and Universal Description Discovery and Integration (UDDI). These four standards combined ease the integration and merging of data and software into a coherent whole that is visible to the user. Even Microsoft, which is pushing ahead with .NET's Web services, uses Sun Microsystems' J2EE in parts of its enterprise, he says. "It's absolutely rare to find a pure platform choice in any organisation. The notion of Web services allows us to step above the fray because they codify the components that cut across different platforms." He says the challenge for organisations is to bring together all the knowledge that resides in its parts - such as financial analysis, business strategy, marketing, research and so on - to form a coherent whole. That challenge is as much cultural as it is technical, although distributed computing platforms such as J2EE and .NET go a long way to clearing the technical hurdles. "The great thing about both .NET and J2EE is, for the enterprise, they raise the level of abstraction, providing services that in the past people had to create for themselves. "You don't want to turn them (workers) into programmers, but instead you want to raise the level of abstraction so that the programming language comes up to them." **************************************************************************** ***** This email and any files transmitted with it may be legally privileged and confidential. If you are not the intended recipient of this email, you must not disclose or use the information contained in it. If you have received this email in error, please notify us by return email and permanently delete the document. **************************************************************************** ***** ------ End of Forwarded Message For archives see: http://www.interesting-people.org/archives/interesting-people/
Current thread:
- IP: A father of object oriented programming compares Java and .NET Dave Farber (Mar 26)