C# or Java??

Posted on 2012-08-28
Medium Priority
Last Modified: 2012-09-03
I have seen this question around a lot but never seen a really good answer so I thought I would pose the question and hope for some good answers. I have a little bit of PHP experience and that is about all. I want to go into C# or Java but don't know what to go into. I am just worried that with C#, you can only use that for windows but with Java you can develop for mobile devices and all sorts. I might be wrong though... Please give me your feedback as to what would be better, especially from an employment perspective. Which is more desirable on a CV etc. Thanks.
Question by:jonofat
LVL 61

Assisted Solution

by:Julian Hansen
Julian Hansen earned 1125 total points
ID: 38341958
Personally from an employment persepctive they are comprable. Java has the advantage that there are so many different platforms out there that are java based that it gives you a lot of scope for finding an opportunity. Many embedded systems use java as their dev language.

It also depends which direction you are planning on going. For me I would prefer C# for app development on windows - I don't like windows apps that have been written in Java especially where performance is an issue.

Having said that if performance was an issue my preference is C++ but that is outside the scope of the question.

Java has many powerful frameworks that allow you to build large scalable systems - I don't think .Net is quite on the same level yet but has advantages in other areas.

So bottom line - I don't think you can go wrong with either skill - having a knowledge of both is always good but specialise based on what it is you ultimately want to be doing.

Author Comment

ID: 38341969
Which one is easier? :)

Assisted Solution

databoks earned 375 total points
ID: 38342332
None and both.

I have 1 year experience with java coding and I think it's a really good language to write different programs to different platforms in.

I had HTML, CSS, VB 6.0, basic scripting and some JavaScript knowledge before i started on Java, and i didn't find it that difficult.

Compared to C# the syntax is somewhat similiar.

No matter what language you take you would still have to take the time it takes to fully understand and master it.

- Kim
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 61

Assisted Solution

by:Julian Hansen
Julian Hansen earned 1125 total points
ID: 38342815
Being a developer is not about the development environment you choose. The concepts remain pretty much the same (visual basic excepted) across most of the major dev environments - if you don't have a grasp of the concepts and the theory - then you are not going to cut it as a developer - not in the true sense of the word - building interfaces with a GUI doesn't really count.

The question about which is easier depends on so many factors that it cannot be answered with a single generic answer. There are also a lot of similarities between them - obviously both derive from a C-type language - both make extensive use of objects. You will get proponents from both camps shouting out which is easier / best but I don't think either will be strictly correct - always a context.

Author Comment

ID: 38342870
Okay, last question julianH... If it were you, would you study PHP, C# or Java? I don't know what would be the best paying and which has the greatest demand (obviously it would depend how good you were but you know what I mean)
LVL 55

Expert Comment

by:Jaime Olivares
ID: 38353115
with C#, you can only use that for windows but with Java you can develop for mobile devices and all sorts

This is not true anymore. Nowadays you can develop with c# for Windows, Linux, Mac, Android, iPad and iPhone, thanks to Mono and Mono-derived products.
LVL 61

Accepted Solution

Julian Hansen earned 1125 total points
ID: 38353258
@jaime_olivares you are correct - but it has been a while since I worked with Mono (briefly) and at the time there were some big gaps in what was supported - ultimately Mono will always be playing catchup.

@jonofat - you are asking a very open ended question. My circumstances are most probably very different from yours so my answer may not be suitable for you. But I will answer like this.

I recently put my CV out in the market, joined skillpages etc. Listed skills as PHP, .Net, CPP and Java.

Going by the responses I have had

0 Java
8 .Net

That is in a couple of weeks.

Having said that the last Java project I worked on (supporting a Java app on version 1 of almost everything - nightmare) I was looking for java devs to come on board to assist. I tried all my contacts in the industry and all of them gave me the same answer. "When you find someone let us know because we are also looking".

There is no clear cut answer for you here - both skills are in demand - but at the end of the day I believe it is your skill that is going to be the most marketable - learning a new dev language if you have the experience is not difficult - but knowing how to use any development tool properly is more important.

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This video teaches viewers about errors in exception handling.
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.
Suggested Courses
Course of the Month9 days, 16 hours left to enroll

569 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question