Java or c#......gah!

Associate
Joined
2 Jun 2005
Posts
1,496
Location
Hull
I'm looking to pick up a modern language, I haven't done any programming since college and back then it was COBOL. Now I can't decide which way to turn.

There are things pulling me in both directions. I'm doing this primarily as a hobbyists with no immediate plans for a career change.

With that in mind java looks good as there are lots of interesting ways to implement knowledge for personal projects like phone apps, websites etc.

....but our devs at work use c# so I could get direct help on anything I get really stuck on.

I've read hundreds of posts and sites and still can't decide...help!!

Cheers guys.
 
They are similar but C# came after Java, could learn from it, plus has had rapid improvement putting it udoubtedly ahead as a language.

So C# unless it's not feasible for the platform or area (existing libraries) you want to work with.
 
Last edited:
I'd go for C#. Just based on the fact that it was released after Java and based on the concept that most programming languages are similair to each other just with improvements. I.e. C to C++ then from C++ to Java/C#. Both Java and C# have the same sort of syntax etc. I.e. Once you know one - the other one would be easy to learn.

I'd recommend this if you were to choose C#.

C# 3.0: A Beginner's Guide
ISBN : 978-0071588300

Bearing in mind the latest version of C# is 3.0 but 4.0 will be out shorly. However there won't be an aweful lot of difference between the two so it shouldn't matter. ;)

Tom.
 
Its kind of a redunant question as once you learn one of these languages, you will pick the other one up in a couple of weeks no problem.

I would say learn Java as it is an excellent teaching/learning language and there are loads of tools/help available and .NET is only available for Windows whereas the JVM is available on nearly all platforms.

However with C# there are other possibilities like XNA development:D and other fun stuff but in Java you can program robots and other cool stuff so take your pick.
 
If you don't mind being confined to a Windows environment (unless you use Mono of course), then C# is a no-brainer. It's combines aspects of several paradigms (e.g. object-oriented, functional, declarative, dynamic typing) which makes it very versatile and concise.

Of course, you could just learn both! Learning the standard library is usually the lengthiest part of learning a programming language; the syntax and feature sets won't take long to pick up.

If you're picking between the two, though, then as a hobbyist I'd choose C# every time. It's just a joy to program in :)

Bearing in mind the latest version of C# is 3.0 but 4.0 will be out shorly. However there won't be an aweful lot of difference between the two so it shouldn't matter. ;)

C# 4.0 and .NET 4.0 were released (along with VS 2010) two weeks ago.
 
Last edited:
C# I'd say as it has a wide scope, and once you've learnt C# its relatively easy to port what you know over to Java, whereas learning Java you still have a lot to learn relative to C#.
 
I would also add that GUI programming with Java can be fun and games compared to the simplicity of Visual Studio. Even with something like the NetBeans GUI builder you still need to spend time playing games just to get some things to work as you intend.
 
I would also add that GUI programming with Java can be fun and games compared to the simplicity of Visual Studio. Even with something like the NetBeans GUI builder you still need to spend time playing games just to get some things to work as you intend.

I'd agree with that, Swing and AWT can be a pain in the backside sometimes.
 
Got myself a couple of ebooks on the subject and both visual studio express 2008 & 2010. Now I just need the time.
 
Back
Top Bottom