Ask coding questions

← Back to all posts
C# or java?
ArchilBeraia

I just finished the basics of c++. I want to know which language to continue with. I want it to be easy and useful.

Voters
DynamicSquid
ArchilBeraia
Comments
hotnewtop
ArchilBeraia

thanks all for helping!

Coder100

C#
This is a really opinionated question, but C# just has more syntactic similarities to C++.

But Java is also a bit verbose, and another thing I really hate about it is its types
you have Integer and int and those both have their different and special purposes, and its not as consistent as C#.

xfinnbar

I think if you want to choose one of those languages go for C# as it is more versatile than Java.

But I'd recommend you learn something that's more widely used, such as Python or JavaScript

EpicGamer007

You seem to be comparing C# and Java. I will give you my take on it and not give any other languages.

Here is my take... DONT LEARN JAVA OR C# OR ANY OTHER LANGUAGE, quoting your post, u said "I just finished the basics of c++", do not learn more languages unless you absolutely have to/want to. I personally would recommend you to continue with C++ and become a "master". It will help you so much more in the long term. But if you are really insistent with picking between java and csharp, well here:

Java

Pros:

  • Cross platform
  • Lots of community support, you can search something and get help for almost anything

Cons:

  • Losing popularity
  • Verbose

C

Pros

  • Great for gamedev (like unity)
  • great for windows development

Cons

  • Not all cross platform (there is .NET core but it is nowhere near as solid as JVM) (Removed after clarification from SixBeeps)
  • In some ways more verbose than java

Java is generally used for web applications (like with spring) or big enterprise applications.

Csharp is more suited towards gamedev with unity and windows applications.

There are more differences but thats all i can think of off the top of my head, here are a few more resources

I personally would recommend java but the choice is yours. Pick what is suited to your needs.

SixBeeps

there is .NET but it is nowhere near as solid as JVM

???

EpicGamer007

@SixBeeps wait .NET is the place where csharp apps can run on linux and mac, right?

EpicGamer007

@SixBeeps and from what i have heard, .NET is not as good as JVM but idk (might be my bias lol)

SixBeeps

@EpicGamer007 .NET has grown immensely within the past few years since the release of .NET core and Microsoft's shift away from Windows-specific applications. It not only does Win+Mac+Linux, but it also has iPhone, Android, and embedded support with libraries such as Xamarin. Might as well tack on Azure for web dev.

.NET also has access to tons of built-in frameworks, much more than what Java has ever given me, but I'll exclude those for simplicity.

The main differences then lie in things that are way beyond my scope, such as "tail recursion" and garbage collection, things that no beginner programmer should really worry about.

(Though like you, I could be biased too ¯\_(ツ)_/¯)

EpicGamer007

@SixBeeps oh thats cool. I never knew you could use csharp for iphone :). I updated post btw

CodeMaster007

If your asking about C# or Java, then Java. I know the basics of C# and yet, Java seems easier. I know Java though.

CodeMaster007

Python. If your a beginner and want to explore programming, definitely python for a million reasons. It was my first language and it set me up for the programming world.

ruiwenge2

Python is easy and useful.