January 2nd, 2002, 07:12 PM
See how those *******s think? M$ is up to thier old tricks...as always.
January 20th, 2002, 12:36 AM
Java vs C# (.Net) - real info
I've programmed extensively in both Java and C# - the initial thing to note is that they are *very* similar. Not only are the languages extremely similar, the .NET platform APIs and the Java platform APIs aren't that different either.
.NET is supposedly language independent. Microsoft tout this as a good thing, and there are reasons for it. MS reckon it's a good idea to develop a project using several different languages. I think it's a bad idea, and you should stick to one. >1 language just causes confusion and means you need programmers experienced in both.
Language wise, although C# and Java are similar, the important things to note are:
C# is a "bigger" language than Java, with more syntax, more constructs and more features. This has its pros and cons. Sun didn't just "forget" to put these features in, they deliberately left them out to make Java a cleaner, more minimalistic language.
Some of these features will undoubtably aid novice programmers, whilst others may just confuse them - So it's swings and roundabouts.
Needless to say, C# isn't quite as cluttered with features as C++
As far as the platform and libraries are concerned, I don't really know how to compare them. The .NET library appears much bigger than the Java1.2 library, and probably bigger than the Java1.4 library, with a very large number of packages for all sorts of things. Of course all of these things are available in Java, but many of them require additional libraries.
Microsoft's library probably has the advantage of learning from the errors of the java library, and being able to start with a clean slate (look at how many "deprecated" APIs there are in Java1.2)
I can't comment objectively on performance, my gut feeling is that C# programs running on .NET on MS Windows will probably run a bit faster than Java progs on the same box, but it's difficult, especially as there is >1 implementation of Java to compare against.
Also, MS Beta licence for .NET specifically prohibits publication of performance data.
anyway that's my tuppence worth
January 20th, 2002, 12:41 AM
oh yes and one more thing
If you regularly program in Java and C#, it gets really annoying, becuase the languages are so similar it's easy to make mistakes and end up having code that should work in one in the other. Sometimes I forget which way around they are:
C# / Java
string / String
StringBuilder / StringBuffer
Hashtable / HashTable
System.IO / java.io
SqlException / SQLException
.ToString() / .toString()
which are probably right !
(yes C# generally uses more capital letters)