Linux Today: Linux News On Internet Time.

osOpinion: .NET: Nothing Except that Redundant (Redmond) Innovation

Aug 18, 2000, 02:32 (8 Talkback[s])
(Other stories by Matthew Badger)

[ Thanks to Kelly McNeill for this link. ]

"In the realm of computers, history will record the names of four significant men: Brian Kernighan, Dennis Ritchie, Bjarne Stroustrup, and James Gosling. While the everyday user may not recognize them, anyone who creates software should. They are the creators of the C, C++, and Java programming languages, the mainstream languages used in today's operating systems and on the Internet. Unix, Windows, Linux, BeOS, and the Mac OS all employ them--the result--operating system independent code. For the end user, this means that a developer can save time writing software and more easily make it available to a greater number of people. However, because Redmond, Washington is still on the map, one software company is taking course to change this with the introduction of its .NET Platform."

"Software can be divided into two groupings: compiled and interpreted. The C and C++ languages are examples of the former. In a compiled language, the software code is transformed into machine instructions. C was originally designed to create operating systems. Bjarne Stroustrup added features (object-oriented structure, templates, exception-handling, and namespaces) to C, thus producing C++ (see plus plus). James Gosling further modified the C++ language transmuting it into Java (adding garbage-collection and bytecode). Unlike the other two mainstreamers, Java is an interpreted language. This means that instead of having to "compile" software code for every platform (Intel x86, PowerPC, etc.) the developer need only compile it once--one set of instructions for every processor and operating system. For this reason, Internet developers have readily adopted Java as a means of sharing their software with many computers all around the globe. Today, another transformation is taken place. Microsoft is introducing the C# (see sharp) programming language."

"In the Microsoft spirit, C# is a technological innovation designed to make life easier for developers. Here are its main improvements from C++: 1) Automatic Garbage-collection; 2) Single Hierarchical Class Inheritance; 3) Attributes, Properties, and Events. In short, it is Microsoft's recreation of Java. There are of course, a few differences apart from syntax. Most important is that C# is a compiled language. Its programs cannot be run on non-Windows platforms. If garbage-collection, etc. were the features Microsoft decided would improve the developer experience, why did they create an entirely new programming language? A more practical choice would have been to create an API (Application Program Interface) in Java. Not only would it have been less time consuming for Microsoft, it would also have made it easier for developers (as to not have to learn yet another language). Therefore, C# is a useless redundancy."

Complete Story

Related Stories: