DEV Community

Dayvster 🌊
Dayvster 🌊

Posted on • Edited on

Is C# worth learning in 2019?

Well is .NET still worth learning in 2019?

The short and boring answer would be, yes. But I assume you're not here for a quick and boring answer, are you? You're probably
here because you are considering which language to learn in 2019. Or maybe you're a greenhorn and would like to dip your toes into
the vast waters of programming. Well in this article I'm going to try and convince you to give C# a try.

Exciting time for C

Just a few weeks ago we were figuratively blown away by some of Microsoft's announcements regarding windows, .NET and C#. Chief among them
being:

  • Fluid web framework that aims to make the web a more productive and interactive place
  • Windows terminal inspired by it's linux counterparts, aims to improve developer efficiency
  • a full linux kernel within Windows with WSL 2.0
  • KEDA and event driven scaling extension for Kubernetes
  • IOT Plug and Play does it need more hype than that?
  • Machine learning for .NET named ML .NET 1.0
  • and much much more

in short, it's an exciting time to be a .NET developer whether you already have a background in coding or you are just entering the field.
A world of opportunity career and otherwise awaits you.

Game Development with .NET

C# has always been a favorite of game developers worldwide, and it strikes a good balance between performance, low level, oop and easy of coding
with some syntactic sugar gently sprinkled in πŸ₯ πŸ’₯ . Now here's a fun statistic almost half the games are made using Unity 3D

unity statistic

Now I am fully aware Unity 3D supports both Javascript and C# as their programming languages. However, one can assume a vast majority of devs
opts for the language that sacrifices less performance, which would, of course, be C#.

With Unity 3D you can create anything from Mobile, PC, and even VR games. So if you're looking to make your future in game development
look no further than C#.

Rich Job Market

.NET has been a highly sought after skill for well over a decade now. Just a quick search for .NET jobs on Monster.com gives us a staggering
result of 30155 Jobs Found. While average salary statistics show that C# developers are still amongst the highest paid developers out there.
So you shouldn't have too much trouble finding employment in the field nor will you go hungry or wanting.

bugs money

Backed by Microsoft

Hate them or love them they are undoubtedly one of the largest and most successful companies in the tech world. One thing Microsoft
was always good at was making sure their development ecospace is of top quality. You can be sure that tools such as Visual Studio and Visual Studio code will
work effortlessly with your technology stack. You can also rest assured that the language and framework will be regularly updated and kept simple and concise for many years to come.

bill gates dancing

Not just Windows anymore, it does Linux and Mac now too.

Since the release of .NET Core 1.0 Microsoft has been putting in a lot of work trying to open source as much of their stuff as possible.
With that finally came official support for Linux and OSX, which means you can now use official C# libraries on Linux or a MAC without having to
resort to using Mono. This means you can have the best of both worlds a fast and efficient Linux server with lighting fast C# running your websites, webapps or services.

speaking of which...

It's BLAZINGLY fast

And I mean FAST, it still outperforms Java, NodeJS and most of the competition, the only languages that can boast about being more resource friendly and therefore fast would be
C, and C++. However, their speed and performance come at a price. In both of them, you have to take care of memory management and trash collection yourself. While C# has a built in trash collector that
Does a pretty damn good job of cleaning up after itself πŸ₯ πŸ’₯.

super fast

it comes with built in pun functionallity

Don't believe me observe:

Why do Java developers wear glasses

because they can't C#

Native mobile application

By using Xamarin you can write fully native mobile applications for both Android and iPhone without having to support two different codebases.
This enables you to develop your mobile apps faster and more efficiently. The only thing you need to figure out now is how you're gonna spend all that extra time you'll have.
I heard the outdoors are supposed to be good for you.

C# is multifunctional

With C# you can write anything from games, mobile apps with Xamarin, desktop applications, web applications, websites and webshops. There are only a few languages out there that are that multifunctional
and none of them is as clean and nice to look at as C#.

Latest comments (60)

Collapse
 
makampos profile image
Matheus de Campos

Baita discussΓ£o em gente!

Collapse
 
ryanthedev profile image
ryanthedev

Java is horrible. I'm a full time Sprint boot webflux Java dev and asp.net core dev. I have also built production apps in angular/react with a node backend.

Unless Java creates an async await keyword, it's not worth it.

.net core has been on fire. If you care about performance and don't want to roll Go, go .net core.

Collapse
 
cyberprogs profile image
CyberProgs

I really don't like the way developers talking about single technology/tool as a golden hammer, I can't even imagine someone comparing C# to JavaScript, they are totally different, each one has its own purpose if you have heavy IO operation go with Node.js if you have complicated business and need a decent architecture go with C# ..etc

Collapse
 
rwing profile image
Rwing

Nice! Can I translate the article to chinese in my blog?

Collapse
 
dayvster profile image
Dayvster 🌊

I can't really expressly forbid that since well I won't know if you did it or not.

But personally I would recommend drawing inspiration from it and writing in your own style and way instead of a direct translation.

What I mean by that is you'll most likely see bigger success if you write your own. It can be similar but in your own personality.

People will feel connected to you as a writer more if you have a clear defined personality and writing style.

Collapse
 
rwing profile image
Rwing

Sorry for my bad english first, I just wanna post this article to chinese community because the .net technology market share in china getting less and less

Collapse
 
maxiakovliev profile image
Max

Actually ASP.net core really outperform Node.js:
here is proof link:
techempower.com/benchmarks/#sectio...

 
aethelflaed profile image
@_Geoffroy

Hey, I precised it was my opinion, and didn't try to say anything negative, I was just surprise to see this post as #opensource and was reacting with the best of my knowledge, without trying to be rude with anyone.

If I can't comment anything, what's the point of commenting anything at all?

And it's really not like I hijacked another comment thread, I started a new one, so really, why are you so butt-hurt?

Read my post again, with the knowledge that I didn't know about this new release, and you'll clearly see that I'm not really criticizing anything, just commenting about something that was clearly my own opinion (as expressed by the common idiom "IMO"), and as soon as I learned about my lack of knowledge on this subject and my actual error, I expressed it also.

So now if you don't want people to express any kind of opinion at all, why are you even on internet?

Collapse
 
manning0218 profile image
Brandon Manning

It should be noted that modern c++ makes memory management a lot easier with the use of smart pointers. I know it's been a part of boost, but being part of the standard is much more convenient. I think C# is still a great language, but that price to pay to use c++ more has to do with not having as many built in libraries. And with vulkan, low level development for graphics is becoming big again. It really depends what you want to do with your career. I still see a lot more jobs for Java then .NET, but a lot of companies are now wanting to use golang.

Collapse
 
kryptosfr profile image
Nicolas Musset

Unity doesn't support JavaScript at all. It has a scripting language which syntax is inspired by ECMAScript but there is no way to use any JavaScript libraries with it.

Collapse
 
aaronfranke profile image
Aaron Franke

Unity does not support JavaScript anymore.

 
jwp profile image
JWP

Funny!

Some comments may only be visible to logged-in visitors. Sign in to view all comments.