Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am a college grad student. I love programming in java. I understand that C# has brighter days ahead. I am planning to broaden my appeal to my prospective recruiters by learning more languages but I don't know much about the .NET platform.

I coded a bit in C++, but I have a strong resistance towards it because I feel it is too cumbersome, whereas in Java, everything is so intuitive.

So do you think C# is similar to Java?

share|improve this question
Have you installed Mono or .NET and tried it? – ChaosPandion Sep 24 '10 at 19:13
Don't base your education on what's hot now. I've seen too many people go into something because it was in demand, graduate, and find they're part of a glut. On the other hand, learning something new is rarely going to hurt you. – David Thornley Sep 24 '10 at 21:13

5 Answers

up vote 9 down vote accepted

The language is VERY similar. The frameworks are VERY different. So depending on if you do web apps, client side apps, installed apps, or whatever, it might seem easy or alien.

share|improve this answer
1  
Beautifully put. Although I think at this point, modern C# 3.0/4.0 code might have reached a point that even it might look a bit alien to a C# 1.0/2.0 developer, let alone a Java developer. The times they are a-changin'! – Allon Guralnek Sep 24 '10 at 22:14

Five years ago, I was exactly in the same situation as you. I went with the French translation of O'reilly C# language, Pocket Reference. With this book and my knowledge of OOP, I was up and running. It took more time to master the language, though

Here is the up-to-date version

share|improve this answer

I had no problems at all being productive quickly in C# coming from a Java background.

The problem is, without code review, the code you're going to start off writing in C# might not be the code you would have written with a year's experience, but it'll work, and the transition is pretty painless.

The IDE is also really, really nice, in my opinion.

share|improve this answer

As the languages are similar you'll probably find it easy to pick up the basics - but as you start getting more proficient in C# you'll start noticing the differences and idiosyncrasies.

If you are still coding in both you might find that this causes you to try to use the wrong construct in the wrong language, but with modern IDEs with intellisense this is less of an issue.

C# is an easy language to pick up, but it's quite hard to master - if only because there's so much to learn.

share|improve this answer

C# was originally created to be a competitor to Java iirc, and like Java it was designed to make for easier transitioning from c-style languages (C, C++, Java). So natuarally the syntax very similar. In recent years, C# and Java have seen additions in different directions, so they're slowly diverging from their common roots.

With that said, the frameworks are can be quite different, which is the most common learning hurdle with a new language/platform.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.