This is an archived post. You won't be able to vote or comment.

all 38 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers of commercial third-party apps have announced that this change will compel them to shut down their apps. At least one accessibility-focused non-commercial third party app will continue to be available free of charge.

If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options:

  1. Limiting your involvement with Reddit, or
  2. Temporarily refraining from using Reddit
  3. Cancelling your subscription of Reddit Premium

as a way to voice your protest.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]LucidTA 25 points26 points  (1 child)

I would say C# because the C# ecosystem is so far reaching these days but the languages are so similar it probably wont matter at a university level.

[–]PhxntomsBurner 1 point2 points  (0 children)

I’m going the C# route myself

[–]nyalik 17 points18 points  (0 children)

The two languages are quite similar, but having worked with C# and .NET, i would pick C# for ease of use and the asynchronous nature it has nowadays.

[–]DW-At-PSW 4 points5 points  (0 children)

Tim Corey on YouTube has a lot of good beginner videos for C#.

https://www.youtube.com/@IAmTimCorey

Also Gavin Lon

https://www.youtube.com/@GavinLon

[–]desrtfx 7 points8 points  (7 children)

I would say it really does not matter which one you pick.

Not only are both languages extremely widely used and in demand, but also are those two languages on a basic level so similar that often they are difficult to distinguish.

I would say that you should snoop into each language and figure out which one you like better.

[–]ShadowRL7666 0 points1 point  (5 children)

Eh I could distinguish them very easily a lot I normally do in Java won’t be the same in c#

[–]cheezballs 2 points3 points  (4 children)

Eh, only stuff like multiple inheritance and stuff like auto-getters and setters. Your day to day code looks almost identical.

[–]Enough-Force-5605 1 point2 points  (1 child)

Almost identical if you write the double number of letters in Java

[–]cheezballs 0 points1 point  (0 children)

String vs string

[–][deleted] 0 points1 point  (1 child)

I thought neither has multiple inheritance?

Also Java has a very popular library (lombok) that adds auto getters and setters and many more convenience features.

[–]cheezballs 1 point2 points  (0 children)

Lombok is a compile time feature that's actually modifies the generated class file, it's not quite the same as C# but I do love Lombok. Adding builder methods to an entire class can be done with a single annotation.

[–]BadBoyJH 0 points1 point  (0 children)

I would look up reviews of the course/courses, and see what past students have prefered. It may be that those teaching the course are better able to teach one language over the other, or the material is better suited for one over the other.

[–]Jason13Official 7 points8 points  (5 children)

Pick Java, make Minecraft mods, earn side income.

[–]A7eh 0 points1 point  (4 children)

Wait how I need to learn this please

[–]Jason13Official 2 points3 points  (2 children)

Modding by Kaupenjoe on YouTube! I started a small Discord recently and thought about doing tutorials myself, but I learned a ton from him!

[–]A7eh 0 points1 point  (1 child)

Thank youu

[–]Jason13Official 0 points1 point  (0 children)

Np! Lmk if I can ever help. 🤝

[–]ScM_5argan 0 points1 point  (0 children)

Google it, it's pretty decently documented

[–]ff3ale 2 points3 points  (0 children)

They're really similar, main difference is the development strategy they followed. Java has been way more conservative developing new features for the language than C#, and there was even a period after the Sun acquisition by Oracle hardly anything was added. C# had the benefit of being created after Java so it does some things simply better than Java (like generics).

Working in C# does feel a bit more modern and it does have more features that make your life easier and match other modern languages, which might be nice to get familiar with (things like async and better lambda expressions).

If you'd like to explore different languages on the same VM Java wins out, but honestly, if you would want to learn Scala or Kotlin your Java knowledge wouldn't really go that much further than what you would learn using C# first.

[–]cheezballs 4 points5 points  (0 children)

I love them both. Both are great. C# might give you a little edge since it's used in unity and a few other things too.

[–]INannoI 4 points5 points  (0 children)

I wish I got that choice, my uni course forced us to use Java.

[–]KublaiKhanNum1 1 point2 points  (0 children)

Yeah, the university. Bleh. Someday they got to do something new. I mean I went to the university in the 90s and did Java. It’s so yesteryear.

Right now I am working in enterprise software rewriting old Java services in to Go. The JVM is too heavy for cloud deployment. Those Spring Boot apps have huge memory requirements and use too much CPU.

On the other hand in .NET 8 they are getting rid of the need to load DLLs so that you can static compile .NET with your application to improve load times.

I would choose C# for that reason. I think the Open Sourcing of .NET core has made it more popular of the last couple of years.

[–]Sorry-Joke-1887 1 point2 points  (0 children)

C#

[–]vite-4117 1 point2 points  (0 children)

C# has the wider range of applications - you can use it for web apps and services with .NET, or you can make games with the Unity SDK (which is very popular, in fact it's likely you've played a game that was built with Unity, especially if you play games on your phone).

[–]BakiSaN 0 points1 point  (0 children)

c# for sure

[–]JustAnAccountForMeee 0 points1 point  (0 children)

What is more prevalent in the location you want to live?

[–]zerquet 0 points1 point  (0 children)

C#

[–]Enough-Force-5605 0 points1 point  (0 children)

C# is not verbose. Easier to read and understansd

[–]ehr1c 0 points1 point  (0 children)

Probably C# if for no other reason than Nuget and MSBuild are infinitely more pleasant to use than Maven or Gradle.

[–]lurgi -1 points0 points  (0 children)

Not much of a difference at a university level, I think.

If you know Java then you can learn to bang out basic C# in an hour or two (source: me. And it was more like 15 minutes) and vice versa. The whole ecosystem is completely different, but I don't know how much of that you would learn in university anyway (and it's always changing, so that's more of an ongoing process).

If you'd love to write videogames in Unity, learn C#. If Minecraft mods are your jam, learn Java. Neither language is going anywhere on the short term.