.NET Framework

这篇具有很好参考价值的文章主要介绍了.NET Framework。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

定义

  • 它是一个虚拟机,用于编译和执行用 C#、VB.Net 等不同语言编写的程序。

  • 操作系统架构和 CPU 架构的组合称为平台。 平台相关意味着编程语言代码将仅在特定操作系统上运行。 .NET 应用程序依赖于平台,因为 .NET 框架只能在基于 Windows 的操作系统上运行。由于 Mono 框架,.Net 应用程序也与平台无关。 使用 Mono 框架,.Net 应用程序可以在包括 Windows 在内的任何操作系统上运行。


基本架构和组件堆栈

.NET Framework

  1. CLR(Common Language Runtime)
    CLR 是 .NET Framework 的基本虚拟机组件。 它是 .NET Framework 中的运行时环境.

  2. FCL (Framework Class Library)
    这个框架中存在大量的类库,称为 FCL

  3. WPF (Windows Presentation Foundation)
    Windows Presentation Foundation (WPF) 是 Microsoft 提供的一个图形子系统,它使用 DirectX 并在基于 Windows 的应用程序中用于呈现 UI(用户界面)。 WPF 最初于 2006 年作为 .NET Framework 3.0 的一部分发布,以前称为“Avalon”。

  4. WCF (Windows Communication Foundation)
    它是一个用于构建连接的和面向服务的应用程序的框架,用于将数据从一个服务端点异步传输到另一个服务点。

  5. LINQ (Language Integrated Query)
    它是在 .Net 框架 3.5 版中引入的。 基本上,它是一种查询语言,用于使用 VB 或 C# 编程语言对数据源进行查询。

  6. Entity Framework
    它是基于 .Net Framework 3.5 版的开源 ORM(对象关系映射)框架。 它使 .Net 开发人员能够使用 .Net 对象处理数据库。 在实体框架之前,.Net 开发人员已经进行了很多与数据库相关的事情。 就像打开与数据库的连接一样,开发人员必须创建一个数据集以获取或提交数据到数据库,将数据从数据集转换为 .NET 对象,反之亦然。 它给开发人员带来了困难,也是容易出错的过程,然后“实体框架”来为应用程序自动化所有这些与数据库相关的活动。 因此,实体框架允许开发人员在更高的抽象级别上工作。

  7. Parallel LINQ (Language Integrated Query)
    它来自 .Net Framework 4.0 版,也称为 PLINQ。 它为 LINQ 提供了一个并发查询执行引擎。 它并行执行 LINQ,以便尝试使用它正在执行的尽可能多的处理能力系统。

  8. TPL (Task Parallel Library)
    它是一组公共类型和 API。 它通过简化向 .Net 应用程序添加并发性和并行性的过程,使开发人员能够提高工作效率。

  9. Task-Based Asynchronous Model
    它是用于描述 .Net Framework 中的异步操作和任务的模型。

MSIL(Microsoft Intermediate Language) or CIL(Common Intermediate Language)

.NET Framework

定义

  • 是一组独立于平台的指令,由特定于语言的编译器从源代码生成。 MSIL 独立于平台,因此可以在任何支持公共语言基础结构的环境(例如 Windows .NET 运行时)上执行。

  • MSIL 由 JIT 编译器转换为特定计算机环境的特定机器代码。 这是在执行 MSIL 之前完成的。 此外,MSIL 会根据要求转换为机器代码,即 JIT 编译器根据需要编译 MSIL,而不是全部编译。文章来源地址https://www.toymoban.com/news/detail-455757.html


CLR中的执行过程

  • 源代码在 CLR 的编译时由特定于语言的编译器转换为 MSIL。 此外,与 MSIL 一起,元数据也在编译中生成。 元数据包含代码中类型的定义和签名、运行时信息等信息。
  • 通过组装 MSIL 创建公共语言基础结构 (CLI) 程序集。 该程序集基本上是一个用于安全、部署、版本控制等的编译代码库,它有两种类型,即进程程序集 (EXE) 和库程序集 (DLL)。
  • 然后,JIT 编译器将 Microsoft 中间语言 (MSIL) 转换为特定于运行 JIT 编译器的计算机环境的机器代码。 MSIL 根据要求转换为机器代码,即 JIT 编译器根据需要编译 MSIL,而不是全部编译。
  • 使用 JIT 编译器获得的机器代码然后由计算机的处理器执行。

到了这里,关于.NET Framework的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包