I was trying to know the reasons that in which scenarios would someone prefer C# over Java. My understanding was that someone would choose C# over java when they do not want to run application on Linux and want to run it only on Windows and want rapid development that includes easier shorter syntax for properties (no getter setter required), no separate servers required (only IIS required which comes in built with Windows OS and no tomcat, joss, web logic setup required).
In my experience there's no significant difference. I've been working with Java for 13 years and with C# for 5 years and I find it easier to quickly pound out apps with Java simply because I'm more familiar with the API.
Anybody who is concerned with how much faster they can write an application in one language because that language has some cool language feature that another doesn't has the wrong priorities: the most time in development is spent on planning and designing applications, not programming.
Except VBScript. **** VBScript. When I have to maintain an application written in VBScript I first invest some time rewriting it to JavaScript.
First, I started to understand the differences between C# and Java. The primary ones I found are java is platform independent whereas C# is for Windows platform. C# doesn't have checked exceptions and we do not need to explicitly propagate up the exception. C# properties is simpler and doesn't require getter and setter. C# has a different concept for generics which I am yet to study. C# has features of delegates and linq which I am yet to study.
Second, I tried to understand that in which scenarios should one choose Java and in which scenarios should one use C#. I understood that Java and C# are high level languages not suited for low level programming like OS programming using C/C++. If the application is to be run on non we down platform like Linux, then Java has to be chosen instead of C#.
Now I want to know that suppose a team has equal expertise in both Java and C# and also there is no requirement of building it for non windows platform and also we do not need to target windows specific features, then in such a case how to decide whether to choose Java or C# for the application?
Monica Shiralkar wrote:Now I want to know that suppose a team has equal expertise in both Java and C# and also there is no requirement of building it for non windows platform and also we do not need to target windows specific features, then in such a case how to decide whether to choose Java or C# for the application?
Team changes over the time. Maybe worth considering how much effort would be to acquire new developers with an expected level of expertise. I don't think there is such definite answer to the question you are rising with such prescribed set of statements around.
There is no greater crime than stealing somebody's best friend. I miss you tiny ad:
Gift giving made easy with the permaculture playing cards