DEV Community

Cover image for Is C# really dying.? Future of C#.!
AlphaCodes
AlphaCodes

Posted on

Is C# really dying.? Future of C#.!

C# is a general-purpose programming language. Technically speaking, you can use it for anything other than what has been developed. There are many coding styles suitable for the C# programming language (it can be used for both functional programming style and object-oriented programming style). It is compiled and strongly typed which means it is easier in doing development but if you are shipping your code into production , there’s little bit more to it.

C# was developed by Microsoft in 2000 in response to JAVA. They have some similarities, such as strongly typed,compiled, Object-Oriented ,working on a virtual machine and many more. C# provides support for Modern days functionalities for all kind of software development such as front-end ,back-end, mobile ,etc.

Lets talk about some pros and cons
PROS
Jobs- The question a person asks when choosing a programming language is “Can I use this to find a job?” No matter what career site you search , C# and .Net developers are most assault after programmers on the platform.There are a lot of jobs out there .

Tools- Visual studio is one of the best and most popular IDE in the market.

Frameworks- .NET Core is cross platform variant of .NET framework & Xamarin used for cross platform Mobile ddevelopment

Cross Platform- It means it allows our C# programs to run on multiple platform instead of only windows machine.

Speed- C# is fast compared to same Modern day interpreted programming languages such as Python and Javascript.

CONS
Learning Curve- Compared to some modern programming languages such as Python or Javscript .C# is quite had to learn.

Is C# Dying..?Should you learn C# in 2021?
My answer would be NO, C# is not dying and YES you should learn it in 2021 because of such new and upcoming features for every programming need.

If you are building a web application, you will consider where it should be hosted, and .Net allows you to host it on a host of your choice. In the past, you had to host to Windows & it would be more expensive compared to a linux host. For an enterprise this can be very important, because you can now host on AWS, Heroku, Windows, Azure, and Linux (in short, you can choose to host).

Let’s talk about some key points in C#
Web Application Development- There is a framework called ASP.Net, under this framework it brings MVC and Web assembly world using Blazor. Many Enterprise solutions are made using C# because of built in scaffolding ,OEM using entity framework ,security called Identity which allows you to build very fast, secure and scalable application.

Another approach to web development is Blazor, because Microsoft puts Blazor at the top of the MVC and Razor pages, because it is the future of web development. So, if u need to learn one thing it’ll be ASP.net but if you are already coding for a living and already doing things then take a look at Blazor because it has the best implementation so far in web Assembly till date & Another approach to web development is Blazor, because Microsoft puts Blazor at the top of the MVC and Razor pages, because it is the future of web development.

Mobile Development- Writing a single code base that supports Android and IOS devices gives us cross-platform mobile development. There are basically three ways to do this: React Native, Google’s Dart / Flutter, and Microsoft’s Xamarin.

Xamarin allows us to create a user interface that supports IOS and Android natively, and it also allows us to share business layer logic code between multiple platforms. Applications developed by Xamarin can run on Android devices, IOS, and Windows / Mac OS desktops. Since it is now open source, the community can jump in and build things that can extend Xamarin to infinity

With C #, you can use ASP.net and the Web API to create microservices or service-based sites, allowing you to run these functions sometimes without using infrastructure in your traditional web hosting or service functions. You can create these microservice patterns and host them on Azure, AWS, or a host of your choice.

Game Development- Build a game inside of C# in Unity that will allow you be break into Game Development.

There’s Embeded, Machine Learning as well as Internet of things(IOT) which are being supported by C# & Microsoft.

CLOUD- Microsoft provides you with one of the most powerful cloud platforms known on Azure. It provides you with cognitive services, enables you to perform speech recognition and text-to-speech services, and uses ML.Net for machine learning.

The great thing about C # and .Net is that it is now open source and the tools are free earlier it was not.

Top comments (2)

Collapse
 
megadev81 profile image
Paul Hughes

C# was the language that just gelled with me after doing Unity, I always felt during University that I would take to programming more if I designed/programmed games, I was correct, took me going through, C/C++/Assembly/Verilog/Matlab then Java struck a chord with android dev, then some html/css/JS web dev just felt right along with C# Unity, I like visual things, doing DSP, Control Systems FPGAs Verilog etc at Uni was too boring, Microcontrollers using Assembly were ok though helped with C understanding. So yeah C# such a clean language and garbage collection, C/C++ not a fan of pointers, malloc, new, delete etc. C++ for Unreal is getting me back towards C++ but I mostly use blueprints, so it might take some time until I'm fully comfortable with C++. I'm not the biggest python fan either just don't know why, types maybe? Don't know I just feel something is off with the language, but it's taking over the world has a massive following they love it and I don't know why? Maybe because it's recommended as a first language? It's quick to write and does the business for ML etc but could do with an upgrade to python 4 to grab more of the C/C++/C#/Java guys? Who knows new languages are being born every day! For now C# hits the sweet spot 🍭 👍

Collapse
 
arminops profile image
Armin Tor

Forget about it's dying... What microsoft is doing to the language is fascinating!