C# or java?
I just finished the basics of c++. I want to know which language to continue with. I want it to be easy and useful.
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
int and those both have their different and special purposes, and its not as consistent as C#.
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:
- Cross platform
- Lots of community support, you can search something and get help for almost anything
- Losing popularity
- Great for gamedev (like unity)
- great for windows development
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.
@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 ¯\_(ツ)_/¯)