网站推广.NET

网站推广.NET

net framework是什么?

来源:互联网

Microsoft .NET Framework是用于Windows的新托管代码编程模型。它将强大的功能与新技术结合起来,用于构建具有视觉上引人注目的用户体验的应用程序,实现跨技术边界的无缝通信,并且能支持各种业务流程。

 .NET Framework 提供的用于运行应用的服务包括:

  • 内存管理。 在许多编程语言中,程序员负责分配和释放内存并处理对象生存期。 在 .NET Framework 应用中,CLR 代表应用提供这些服务。

  • 常规类型系统。 在传统编程语言中,基本类型由编译器定义,这将使跨语言互操作性复杂化。 在 .NET Framework 中,基本类型由 .NET Framework 类型系统定义,并且是面向 .NET Framework 的所有语言所共有的。

  • 一个全面的类库。 处理常见的低级编程操作时,程序员可通过 .NET Framework 类库使用类型及其成员的易访问库,而不必编写大量代码。

  • 开发框架和技术。 .NET Framework 包括用于特定区域应用开发的库,例如用于 Web 应用的 ASP.NET、用于数据访问的 ADO.NET、用于面向服务的应用的 Windows Communication Foundation,以及用于 Windows 桌面应用的 Windows Presentation Foundation。

  • 语言互操作性。 面向 .NET Framework 的语言编译器发出名为公共中间语言 (CIL) 的中间代码,反过来,通过公共语言运行时在运行时进行编译。 借助此功能,使用某种语言编写的例程可由另一种语言访问,程序员可以专注于使用其首选语言创建应用。

  • 版本兼容性。 除少数例外,使用特定版本的 .NET Framework 开发的应用无需在更高版本中修改即可运行。

  • 并行执行。 通过允许同一台计算机上存在公共语言运行时的多个版本,.NET Framework 可帮助解决版本冲突。 这意味着应用的多个版本可以共存,并且应用可在构建它的 .NET Framework 版本上运行。 并行执行适用于 .NET Framework 版本组 1.0/1.1、2.0/3.0/3.5 和 4/4.5.x/4.6.x/4.7.x/4.8。

  • 多定向。 通过面向 .NET Standard,开发人员可创建适用于该标准版本支持的多种 .NET Framework 平台的类库。 例如,面向 .NET Framework 4.6.1、NET Core 2.0 和 UWP 10.0.16299 的应用可以使用面向 .NET Standard 2.0 的库。

 .NET Framework 体系结构中各部分:

1) 编程语言

在 .NET Framework 框架中支持的编程语言包括 C#、VB、C++、J# 等, 但目前使用最多的是 C# 语言。

正是由于在 .NETFramework 中支持多种编程语言,因此 .NET Framework 也配备了对应的编译器。

2) CLS

CLS(Common Language Specification, 公共语言运行规范)定义了一组规则,即可以通过不同的编程语言(C#、VB、J# 等)来创建 Windows 应用程序、ASP.NET 网站程序以及在 .NET Framework 中所有支持的程序。

3) .NET Framework 类库(Framework Class Library, FCL)

在 FCL 中包括 Windows Forms (Windows 窗体程序)、ASP.NET(网站程序)、WPF(Windows 的界面程序的框架)、 WCF(Windows 平台上的工作流程序)等程序所用到的类库文件。

4) CLR

CLR 是 .NET Framework 的基础。用户可以将 CLR 看作一个在执行时管理代码的代码,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格类型安全以及可提高安全性和可靠性的管理。

它与 Java 虚拟机类似。以公共语言运行库为目标的代码称为托管代码,不以公共语言运行库为目标的代码称为非托管代码。

5) OS

操作系统(Operating System, OS)在目前的 .NET Framework 中仅支持在 Windows 上使用,在后续的版本中将支持在 Linux 和 Mac 操作系统上使用。

.NET Framework 的特点:

1、提供标准的面向对象开发环境。

2、提供优化的代码执行环境,具有良好的版本兼容性,并允许在同一台计算机上安装不同版本的 .NET Framework。

3、使用 JIT(Just In Time)技术,提高代码的运行速度。

net.framework是什么