Ordinary users may think that this is some kind of programming thing that does not affect their lives in any way. In fact, it makes sense for them too.
If it wasn’t for .NET, users would have to set up a runtime environment for programs in each language. That is, to run a Visual Basic application, you have to download the runtime environment for Visual Basic. If the program is written in C#, they would have to download the runtime for it as well (hire .net developer).
It will very quickly fill up all the space on your computer with slightly different copies of the same libraries.
It is important for programmers too, because it allows them to develop one environment that is used for four languages at once. Otherwise, regular developers would have to wait until a new version of the libraries for their language is released. Less popular languages like F# would get an update much later than C#.
In addition to the main languages, there are others that are supported by .NET. These include COBOL, Fortran, Haskell and even Java – you can see the full list.
These languages are often written in legacy projects that are difficult to translate to the new technology. .NET allows you to rewrite part of the program in COBOL to .NET standards, and then simply write the new parts in a more modern language like Visual Basic.
How it works
The principle is quite simple, although it looks confusing. Mostly because of the similar names: CLR, CLI and CIL. For a start, take a look at this image:
This is the CLI (Common Language Infrastructure). It defines how .NET (and other similar frameworks like Mono and DotGNU) works.
Each language has its own compiler in the CLI. But programs are not compiled to native code (executable), but to CIL (Common Intermediate Language) intermediate byte code.
For example, if you write a program that outputs “Hello, World!” in different languages, it will compile into this intermediate bytecode in all of them:
When you run a program written in one of the .NET languages, its bytecode is passed down the chain to the Common Language Runtime (CLR). There, this byte-code is compiled into native code and executed.
Almost the same principle is used in the Java virtual machine, but .NET programs run faster, making them suitable for running not only on a server but also on personal computers.
Until 2014, .NET ran only on Windows, but then .NET Core was created, a cross-platform version of the framework that will soon replace the main version.
Understanding how .NET works allows you to learn new architectural solutions and see one of the best implementations of the DRY rule. It helps you write more elegant programs that don’t repeat code or individual modules. It can also be asked about at job interviews (fireart.studio).
To program in one of the best languages of the .NET family, you can enrol in the course. There you will learn how to write good code and build up a portfolio.
Some of the major applications of .Net are detailed below:
Architecture. .Net has a layered software architecture. It helps in separating functions for presentation, application processing and data management. It is used to develop agile applications. It also provides the advantage of adding or editing layers without disrupting the entire application.
Games. Since the use of .net is extremely versatile, it helps in the development of gaming applications. Because of the .net Framework’s speed and excellent performance, gaming applications are better developed and stay longer.
Applications: It really helps in building web applications and websites. Applications are mostly developed and can be easily and easily used on a computer, laptop or mobile device and with high performance. It helps in creating a compatible application that can be used on multiple platforms. Using .Net provides great features that help developers or programmers develop an application that synchronises with all platforms. It is also used to develop desktop applications. Many organisations choose to work on .net just because of this
Manageable: using .net provides managed code, this means that no matter what code has been written by developers or programmers, it is mostly managed code. External code written from the net framework is called unmanaged code.