My friend is starting to like Java (help!)

Started by
31 comments, last by Nypyren 12 years, 9 months ago

[quote name='way2lazy2care' timestamp='1311175843' post='4837995']
[quote name='The_Neverending_Loop' timestamp='1311173342' post='4837983']
Again It is honestly in my opinion a matter of preference, but one things that Java definetly does have over C# is that its alot cheaper to develop for.


You can develop both for free o.O
[/quote]

Starting to sound like he knows less and less about C#. Next he'll say that C# code can only run on Windows...

Visual Studio Express
[/quote]

I can essentially use every aspect of java without spending a dime, the same cant be said about C#.

if your "married" to C#, you'r married to its family, same for java, and I prefer the java family.

[EDIT] This is starting to start like a fan boy topic, I never said C# is a bad language, in fact I think its great, I simply stated I preferred Java and was asked for my reasons. It'd be pointless to have a conversation stating why X is great then Y other then personnel preference. With that said I'ama leave from any further discussions on this topic.
Advertisement

I can essentially use every aspect of java without spending a dime, the same cant be said about C#.

if your "married" to C#, you'r married to its family, same for java, and I prefer the java family.

[EDIT] This is starting to start like a fan boy topic, I never said C# is a bad language, in fact I think its great, I simply stated I preferred Java and was asked for my reasons. It'd be pointless to have a conversation stating why X is great then Y other then personnel preference. With that said I'ama leave from any further discussions on this topic.


You can use every aspect of C# without paying a dime. The C# that you're using in the free version of Visual Studio is exactly the same as the $10,000 ultimate edition of Visual Studio. You're paying more for better tools. The same principle exists in Java. You have free IDEs and commercial IDEs which often have more features. You're paying for the tools, not the language.
I think it's at least important to make sure everyone knows the relevant facts. We can leave out our opinions and still have a good, informative conversation.

Microsoft.Net is available for free and includes MSBuild and the C# compiler. This means you can also distribute programs which compile themselves to normal "non-developers" and they will be able to compile it. You can do the same in Java with the JDK, but I'm not sure if the JRE includes a compiler or not.

Visual Studio has the free "Express" editions. They are missing some IDE (not language or library) features that the Standard/Pro/Team editions have, but you can find free, stand-alone tools to do profiling, unit testing, and source control (you just won't be able to use them as plugins within the IDE itself). There are several free IDEs for Java as well, such as Eclipse.

For cross-platform desktop development, .Net has a free implementation called 'Mono' which runs on other OSes such as Linux and OSX. For the most part it works, but there are more obscure bugs than with .Net on Windows. Java has a more consistent(?) JRE and JDK for each platform.

For mobile phone development, you can develop WP7 apps for free on .Net and test them using a device emulator, but you need to pay to be able to actually deploy your app to your physical phone (as far as I know, but there are probably hacks to bypass this), or submit them to the marketplace. I don't know about Java and Android devices, but I'm guessing there's no costs involved to deploy your app to your device. I'm not sure about how submitting to various app marketplaces work with Android.



As far as being "married" to C#, C# will interoperate gracefully with many other languages. It works with with COM, other .Net languages, and certain native libraries using P/Invoke. Under Mono, some trickery can be used to P/Invoke functions in .so files. I'm not experienced enough with Java to know what kinds of interop scenarios it offers in comparison.

This topic is closed to new replies.

Advertisement