C# or Java??

Posted on 2012-08-28
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 49

    Assisted Solution

    by:Julian Hansen
    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

    Which one is easier? :)
    LVL 8

    Assisted Solution

    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
    LVL 49

    Assisted Solution

    by:Julian Hansen
    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

    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
    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 49

    Accepted Solution

    @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

    1 PHP
    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.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Enabling OSINT in Activity Based Intelligence

    Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

    We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
    This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
    Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
    This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

    779 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

    Need Help in Real-Time?

    Connect with top rated Experts

    14 Experts available now in Live!

    Get 1:1 Help Now