blog posts

Introduction to .NET Framework And other .NETs !

NET is a free and open-source development framework for developing many applications. Join us to learn more about this framework. In this article, you will learn about .NET and its architecture, the differences between Dot NET CORE and .NET FRAMEWORK, and when to use it.

The birth of .NET

.NET was first released in 2002 with the announcement of a new language called #C by Microsoft. The original goal was to develop software applications on the Windows platform. Still, over time Microsoft began to policy on frameworks beyond Windows, and today Dot NET is used to program other areas such as the web, mobile, etc.

.NET Types: .NET Differences. And .NET Core.

And NET is presented in three broad categories:

  • Net Framework.
  • Net Core.
  •  Xamarin

NET Framework.

This is the first release released under .NET, which only supports Windows-based devices. Windows Forms and WPF are used to build applications in the desktop environment, but ASP.Net, which is very common in today’s industry, is used to design dynamic websites and web applications. The existence (CLR) allows developers to write ASP.Net code using different .Net languages, which we’ll discuss later.

Net Core.

It is a rebuild of the previous framework, except that developers can use it in Linux and OS X to create applications that are not necessarily related to the Windows family. This new system seeks to conquer the cloud. In addition to .NET Core. Not only is it multi-platform, but different versions of it can be installed sideways on one device. NET Core includes ASP.NET Core and Universal Platform Windows (UWP).

Xamarin

Today if you want to program using the .NET Framework. Developing for mobile (Android, Windows Phone, and iOS) will be the choice of many Zamarin developers.

Net Standard.

2016 was a fruitful year for .NET developers; This year, in addition to introducing Zamarin and .NET CORE, a comprehensive library was introduced to combine the above three frameworks so that people can use a basic class library instead of mastering three different libraries. This is the integration step that Net Standard. It is called to create a higher ecosystem and compatibility in reusing components in different operating systems.

.NET Framework

NET architecture.

The .NET Framework architecture is based on the following three main components:

  1. Common Language Runtime
  2. Class Libraries
  3. Language Programming Languages

What is CLR?

The Common Language Infrastructure, or CLR, is at the heart of .NET: a virtual software machine that manages memory, implements code access security, verifies code security and executes programs and code. CLR is what makes .NET a management and multitasking framework and is the platform on which .NET applications run. It has the following key features:

  •  Exception Handling: Managing errors that occur while running the program, such as: Trying to open a file on a local device while the file does not exist
  • Working with different programming languages: As mentioned in the previous section, a developer can create an application in different types of .NET programming languages.

The different parts of the CLR are:

  • Language: The first level is the programming language itself, the most common of which are VB.Net and C #.
  • Compiler: There is a separate compiler for each programming language. So under VB.Net, there will be a separate VB.Net compiler. Similarly, for C #, you will have another compiler.
  • Common Language Interpreter: This is the last layer in .NET used to run a program built into any programming language. So the next compiler sends the program to the CLI layer to run the .NET program.

Class Libraries

NET Framework. Includes a set of standard class libraries. Libraries are a collection of methods and functions used for their original purpose.

For example, a library has methods for performing all file operations. So there is a way to use a file to read text. Similarly, there is a way to write text to a file. Most of these methods in .NET are divided into System or Microsoft names.

programming languages

You can use multiple languages, editors, and libraries within .NET; Therefore, programmers have a lot of choices to develop their programs. The most commonly used of these languages ​​are:

  • C #: A simple, modern, object-oriented programming language
  • Visual Basic (VB): A simple, object-oriented language with easy writing for applications

Suitable environments for .NET programming.

Visual Studio is the most comprehensive environment for .NET application development. The next option, which is somewhat lighter and used by most web developers, is Visual Studio Code. Rider, designed by JETBRAIN, is another option for choosing a .NET environment.

Why do we use .NET?

to be independent

The main advantage of this framework is its independence from programming languages. Instead of being limited to using a specific programming language, programmers can use .NET in any language .NET compatible.

 Support over time

Suppose you created an application in the older version of .NET, for example, 2.0. And you try to run the same program on a device with a higher version of the .NET framework, such as 3.5. The program is still working. This is because, with each version, Microsoft ensures that older versions of the framework are compatible with the latest version.

 Portable

Throughout this article, we have repeatedly mentioned that applications built with .NET can run on any platform, including Windows, iOS, and Linux.

 Memory Management

The CLR does all the memory management work. The .Net framework has a high ability to find resources that are not being used by a running application, freeing up those resources through the Garbage Collector mechanism.

 Easy deployment

.NET has tools that can be used to package built-in applications. Finally, these packages are distributed on client devices and automatically installed in the program.

 high security

As you know, Microsoft values ​​security. Therefore, this Microsoft product is reliable against malicious attempts to change the compiled code.

Who should not go to .NET?

It is somewhat difficult for people unfamiliar with the world of programming to explain this framework’s operating properly. It is somewhat annoying for people accustomed to logical languages ​​like C because it is a framework consisting of object-oriented languages. For this reason, it may be better to go for this framework after mastering the concepts and a deep understanding of programming.

The future of the .NET framework.

Microsoft has released a detailed program for .NET, which you can see in the figure below:

The future of .NET

Conclusion

NET. It is a comprehensive and valuable collection with a bright future. As promised by Microsoft, we will see an extended version of .NET by the end of 2020 that will be able to run and support a variety of operating systems, devices, and applications. If you are a .NET programmer or interested in this field, share your experiences with other friends.