- .NET is an open-source and cross-platform development platform for building many types of applications.
- It is developed and designed by Microsoft.
- It is unified platform supports multiple programming languages and libraries to build web, mobile, desktop, cloud, gaming, IoT applications, and more.
- You can write .NET apps in C# , F#, or Visual Basic.
- F# is a programming language that makes it easy to write succinct, robust, and performant code. It also supports the object-oriented programming model.
- Visual Basic is an approachable language with a simple syntax for building type-safe, object-oriented apps. It is a Historical Microsoft language.
- Today, we build software to target various devices and platforms.
- Devices include desktops, laptops, tablets, and smartphones. Platforms are Windows, Linux, and Mac.
- Besides these common devices and platforms, there are more devices and platforms out there.
- Internet of Things (IoT), cloud platforms, gaming devices, TVs, refrigerators, and cars are other popular devices that run on software.
- It is a software development platform for building software applications for all these devices. That means, once you learn .NET, you can start building applications for desktops, web, cloud, mobile, gaming, IoT, and more devices.
Characteristics of .NET
- It is an open source and available on GitHub for free to download and open to community contributions. A majority of the development is decided by a large open-source community, While the direction of .NET development is lead by a dedicated team of experts at Microsoft.
- It is cross-platform and supports all Windows, Linux, Mac OS. This application run on multiple platforms and it can be developed by using a single code base.
- It is a modern software program development platform and helps a majority of modern software program development desires along with native mobile, cloud, web, and services.
- It helps multiple languages along with C#, F#, and Visual Basic. It is cloud-native and allows developers to build cloud-based web applications, services, and APIs.
- It offers some of the best software IDE and tools including Visual Studio and Visual Studio Code.
- It becomes fast and friendly and plays well with other languages and platforms
.NET Framework Architecture
- It is a programming model for the .Net platform that provides an execution environment and integration with various programming languages for simple development and deployment of various Windows and desktop applications.
- It consists of class libraries and reusable components
1. Common Language Runtime
- The CLI – “Common Language Infrastructure “is a platform in .Net architecture where their programs are executed.
- The CLI has the following key features:
- Exception Handling : Exceptions are errors which occur while the application is executed.
- Examples of exceptions are:
- If an application tries to open a file on the local machine, however the file isn’t present.
- If the application tries to fetch a few information from a database, however the connection to the database isn’t valid.
- Garbage Collection : Garbage collection is the process to remove unwanted resources when they are no longer required.
- Examples of garbage collection are :
- If the application has done all operations on a file, then the file handle may no longer be required.
- If the application has finished all operations on a database, then the database connection may no longer be required.
- Working with Various programming languages
- Language – The VB .NET and C# are the first level is the programming language.
- Compiler – There is a compiler will be separate for each programming language. In VB .NET language, there will be a separate VB .NET compiler. In C# language, you will have another compiler.
- Common Language Interpreter – In any programming language it is used to run a developed .NET program. So, the subsequent compiler will send the program to the CLI layer to run the .NET application. This is the final layer in .NET.
2. Class Library
- The .NET Framework includes a set of standard class libraries. A class library is a collection of methods and functions that can be used for the core purpose.
- For example, there is a class library with methods to handle all file-level operations and used to read the text from a file. Similarly, there is a method to write text to a file.
- Most of the methods are split into either the System. * Or Microsoft. * Namespaces. (The asterisk * just means a reference to all of the methods that fall under the System or Microsoft namespace)
- A logical separation of methods in namespace.
- The types of applications that can be built in the .Net framework is classified broadly into the following categories.
- WinForms – It is used for developing Forms-based applications, which would run on an end user machine. For example, Notepad is a client-based application.
- ASP.Net – It is used for developing web-based applications, which are made to run on any browser such as Internet Explorer, Chrome or Firefox.
- The Web application would be processed on a server, While Internet Information Services Installed.
- IIS is a Microsoft component which is used to execute an Asp.Net application.
- The result of the execution is sent to the client machines and the output is shown in the browser.
- It is used to develop applications to interact with Databases such as Oracle or Microsoft SQL Server.
- Microsoft always ensures that .Net frameworks are in compliance with all the supported Windows operating systems.