.NET software engineering – how this Framework works

NET Framework is a multifunctional software development platform from Microsoft Corporation, which was released back in 2002. Technology .NET has become a popular platform for developing desktop applications and web resources. It can be said that the platform was created as an alternative to the Java development platform, which over the years began to lose its popularity all over the world, and companies and system architects increasingly prefer Microsoft .NET technology. According to research, over the past 5 years, interest in Java has decreased by 55%, and interest in the DOTNET platform continues to grow, especially with new generation technologies such as .Net Core have already appeared.

NET Framework

Where and what is the .NET platform used for

Working with the .NET environment, you can create applications of almost any complexity and in any business sector, starting with console applications, programs with a Windows interface, various web services, and web applications. And after the advent of .Net Core technology in 2016, you can write cross-platform applications that will work on Linux, Mac OS, and Windows. The life of an application developer has become easier, because it is enough for him to write his code once using the .NET Core framework, and the application will still work on any platform without making changes to the written code.

Also in the CLR, there is a mechanism for type compatibility control, which allows you to avoid many problems at the compilation stage.

How Microsoft .NET technology works

The system consists of two main parts – Common Language Runtime (CLR) and .NET Framework Class Library.

CLR

It is a powerful tool that includes tasks such as thread management and memory management, which frees the developer from the control and reclaiming of space for objects, as well as tracking and managing the lifecycle process of an object. With the help of the Common Language Runtime, the developer does not need to do this manually, the technology itself determines the age of objects and makes room for young ones by deleting old ones.

Also in the CLR, there is a mechanism for type compatibility control, which allows you to avoid many problems at the compilation stage.

What is the Common Intermediate Language (CIL)

Another important feature of this technology is that the code that was created using any of the languages supported by .NET will then not be compiled into ordinary machine code, as, for example, in the C language. This code will then compile to the Common Intermediate Language (CIL).

After the application is launched, an intermediate CIL code enters the runtime, while the application does not even need to know and understand the language in which the code for it was originally written. This feature gives the development team more flexibility in system architecture and more functionality in the development environment.

Features of the .NET platform

This technology – this is not one programming language, but a whole group of languages:

  • C#
  • F#
  • Visual Basic

This happens because the base types in development are not tied to the language compiler, but they are all written in the .NET Framework Class Library, and development languages are just tools for working with these types.

Before the release of the .NET platform, application developers regularly used the Component Object Model (COM) programming model. The advantage of this model was the ability to create libraries of code that could be used with different programming languages. But the shortcomings of this model led to the creation of .NET technology, for example, libraries in it are not registered in the system registry, unlike the COM model, and several versions of one library can be installed on one PC.

Also, COM software can interact with .NET libraries and vice versa, which allows you to integrate new software with old components and programs.

Based on the above, we can say that the technology is very flexible and versatile. Every year it develops more and more in the world community and technology has a long and prosperous future. The developer community around the world is growing strongly, which will allow in the future to even more widely apply the technology in all areas of business and scale it.