03-13-2005, 03:29 PM
i am a newbie to programming and thus am uncertain which language to learn ... java has been a hot thing for a while but C# seems to be the 'in' thing with all its usability in the .Net framework and so on ... so can you ppl please help me choose between Java and C#...i would also like to request you to write the positive and negative sides of both while giving suggestions...thanks in advance
Since both technologies have been out for a while and they're pretty much competing (+ C# took a lot of what did/did not work in Java) a google search turns up a lot of different comparisons. Some favour Java (http://www.builderau.com.au/program/java/0,39024620,20273510,00.htm), some favour C# (http://www.devhood.com/messages/message_view-2.aspx?thread_id=94).
I like this comparison of C# and Java mindsets, but I'm biased:
Beyond language features, you might have to figure this one out yourself as Microsoft developers will try to convince you that .NET is the future and Java developers will try to convince you that Java is the way to go. Everybody has well-founded reasons to go with their technology, it's up to you to do the research and make a decision I think.
I personally haven't used C#. I *might* do it eventually if it ever gets really big but until then my anti-MS sentiments keep me from even getting started with it while I still have so much of both Java and Python to learn and apply.
03-13-2005, 09:07 PM
C# and Java are just languages, anyways. I don't know if such projects are in the works, but Java running on the CLR and C# running on the JRE are far from unlikely future developments. The more interesting question is the Java versus .NET toolkits, the CLR versus the JRE virtual machines, and the amount of code and libraries you can get to ease your work. Java has a greater set of libraries, which isn't especially strange, considering the age difference between the two.
Both are managed and run in a stack based virtual machine, but that virtual machine is different between them. The JRE is more introverted. It's hard and expensive to go outside the Java environment. Java provide a rather good platform independence, except for the obvious problems of OS integration. The CLR is extrovert - it's easier and less expensive to go outside the CLR, but at the cost of a less robust sandboxing. CLR has larger problems than Java in platform independence, and is well integrated to one OS but not to any others.
There's of course the issue of locking yourself in. Sun has the Java development in their hand, Microsoft have the .NET and CLR developments in their hands. But Microsoft owns and primarily develops one of the platforms. They don't have to, like Sun, try to play good in all environments. Neither do they rely heavily on another company (read IBM) for the primary IDE.
Personally, I consider the C# language to be a retry at the process that created Java without the cludges and mistakes. It's a better designed language. The CLR is somewhat superior to the JRE as well, though that only on one platform. All over, Microsoft has designed a better architecture and a better language. Usage and libraries will come. If these two were my only choices, I'd go with C#, using .NET on top of CLR.
05-28-2008, 03:07 PM
i have been programming for about 5 years Java and now started working with the .NET Framework and tried both Languages !
C# and VB.Net !
mostly i have worked with Java ! and at my opinion i can say that which is better it's something very difficult to deside!
Just like Java, C# has a single rooted class hierarchy where all classes in C# are subclasses of System.Object the same way all Java classes are subclasses of java.lang.Object. The methods of the two languages' Object classes share some similarities.
The languages are about 80 % the the same !
in web there are a little diferences !
i believe that if u learn one ! u can very quickly learn an other !
in my opinion for someone to start i would suggest java And JSP/SERVLETS !
Cause u can find thousands of books in java and good books very cheap !
enter amazon and do a search ! you will see more than 300 books in java
for web or anything !
the Major problem i had with C# was that i could not find so much resources as u can in java !
except that all universities do JAVA (Open Source ) !!!
lots of support lots of forums and lots of books !
books are very important ! (Paperback) for my opinion ! real books !
and realy very cheap
u can buy dozens of java books with 10 dollars
some in ebay with 1 $ come with free shipping