View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Discussion 1 - Matthew Plowden

http://www.cs.vu.nl/~eliens/online/oo/II/5/comparison.html

In the article Comparing Smalltalk, Eiffel, C++, and Java, the author cites 3 main areas for critiquing these languages. Those 3 areas are class libraries, programming environment, and language characteristics.

The author chooses the aspect of class libraries because, as he states, "A general class library, and preferably libraries suitable for the application domain one is working in, may drastically reduce development time." There are many good libraries for Smalltalk and Eiffel. Java has arguably the best libraries of any language in existence. However, C++ is found to be very lacking in libraries. While C++ does have many good third party libraries, users are often left to take a chance on something they aren't 100% sure of.

Programming environment is used as a criterion because it arguably has the greatest impact on a userís programming experience. Smalltalk is considered to have the most extensive environment of the languages reviewed, while Eiffel is a close second with its many included tools. Java has increasingly many IDEs available, while C++ is catching up with many tools being developed.

Lastly, language characteristics are studied. Of the characteristics studied, the most important seem to be documentation value, reliability, and inheritance mechanisms. As far as documentation value is concerned, Eiffel and Java seem to be leaps and bounds above the rest. In the reliability aspect, Java takes the cake, and C++ lags far behind. In the area of inheritance, Eiffel and C++ are the only languages that offer multiple inheritance, which would give them a great edge in that area.

Overall, it seems to be a dead heat between Smalltalk, Eiffel, and Java, with C++ left in the dust. However, in Arcadiy Kantor's discussion, he cites the author's praise of C++ for its flexibility and class template features. While any one source may get a ceratin opinion of a language, this goes to show that its really all just a personal preference of which language is best for you.

Link to this Page