|
|
|
|
|
by guhidalg
1354 days ago
|
|
C# is great. You get: - Tons of developers know it
- Tons of Java developers can be made to know it with ease
- A good default IDE experience within VS and VSCode, and a JetBrains product if you prefer it.
- A good LSP implementation with OmniSharp if you don't want to use an IDE.
- ASP.NET, a good default Web framework.
- NuGet as a package manager with tens of thousands of packages.
- Better than java reflection and runtime generics.
- Cross-platform CLI tooling since .NET Core, now it's just .NET.
- Ability to deploy self-contained applications.
- Mono version of C# is used for making games.
- A continuously evolving cohesive language with minimal competitors (like Groovy, Kotlin, Scala, Clojure, etc... on the JVM)
- F# if you want a stricter functional language that interoperates with C# seamlessly.
- PowerShell as a way of interactively running any .NET assembly, regardless of how it was compiled. And many more... C# is one language you can build a career on and also use for hobbying and have fun. The haters will complain that MSBuild (the default build system) and Visual Studio suck. If you've tried them in the past, you're probably right. Try them again in 2022 and see if your opinion doesn't change. |
|
I do want to branch into F# and FP but i didnt want to miss on the C# train so i tried it and it blew my mind how well the language has been designed (i mean at C# 10, .NET 6). They even made the Java-esque boilerplate thingies become automated so the code reads and feels almost like a better version of Javascript.
I am a new programmer (with only Intermediate Python and tid bits of CS under my belt) but i think choosing C# for a language made sense because of all the things you mentioned, and it also helps that it is aesthetically very beautiful, and worlds apart from C and C++ in many respects.