C# 图解教程 第5版 —— 第2章 C# 和 .NET Core

文章目录

    • [2.1 .NET 框架的背景](#2.1 .NET 框架的背景)
    • [2.2 为什么选择 .NET Core(和 Xamarin)](#2.2 为什么选择 .NET Core(和 Xamarin))
    • [2.3 .NET Core 的目标](#2.3 .NET Core 的目标)
    • [2.4 多平台支持](#2.4 多平台支持)
    • [2.5 快速发展和升级](#2.5 快速发展和升级)
    • [2.6 程序占用空间小、部署简单、版本问题少](#2.6 程序占用空间小、部署简单、版本问题少)
    • [2.7 开源社区支持(*)](#2.7 开源社区支持(*))
    • [2.8 改进的应用程序性能](#2.8 改进的应用程序性能)
    • [2.9 全新的开始(*)](#2.9 全新的开始(*))
    • [2.10 .NET Core 的发展](#2.10 .NET Core 的发展)
    • [2.11 .NET 框架的未来](#2.11 .NET 框架的未来)
    • [2.12 Xamarin 的适用之处(*)](#2.12 Xamarin 的适用之处(*))

2.1 .NET 框架的背景

​ .NET 框架最初在 2002 年发布,在"编程框架"方面已经十分成熟。

2.2 为什么选择 .NET Core(和 Xamarin)

​ .NET 主要用于 Windows,但随着 Unix 和 Apple 兴起,Windows 地位下降。

​ .NET Core 框架由此被微软开发,是基于云、跨平台、开源的产品。

​ 同时,微软收购了 Xamarin 以解决 Android 和 IOS 等移动平台的开发问题。

2.3 .NET Core 的目标

  • 多平台支持
  • 快速开发和升级
  • 更小的应用程序占用空间
  • 更简单的部署
  • 更少的版本问题
  • 开源社区支持
  • 改进的应用程序性能
  • 全新的开始

2.4 多平台支持

​ .NET Core 允许开发人员创建在 Windows 上运行的应用程序,只需要少量修改即可运行在 Linux 和 macOS 上。

2.5 快速发展和升级

​ .NET Core 高度模块化,可以通过 NuGet 包自动升级。

2.6 程序占用空间小、部署简单、版本问题少

​ .NET 框架包含 20 000 多个类,必须完整安装,并要求版本匹配。如果用户升级框架,则需要重新编译应用程序。

​ .NET Core 可以指定安装的包,空间占用更小。且能够与应用程序一并发布,因此不会发生版本冲突的问题。这也意味着,每个程序都有自己的 .NET Core 副本,可以在不同时间升级不同的应用程序。

2.7 开源社区支持(*)

2.8 改进的应用程序性能

​ 除了使用及时编译器 JIT 动态将中间代码 IL 转换为机器代码,.NET Core 应用程序还可以预编译为 Windows、Linux 或 macOS 上的本机代码,以提高程序性能。

2.9 全新的开始(*)

2.10 .NET Core 的发展

​ .NET Core 1.0 于 2016 年 6 月发布,1.1 版本于 2017 年 3 月发布,2.0 版本于 2017 年 8 月发布,其发展速度十分之快。

2.11 .NET 框架的未来

​ 微软承诺 .NET 框架将继续发展。.NET Core 通常也是 Linux 和 macOS 上开发应用程序的最佳选择。

2.12 Xamarin 的适用之处(*)

相关推荐
R-G-B5 小时前
【02】C#入门到精通——C# 变量、输入/输出、类型转换
开发语言·c#·c# 变量·c#输入/输出·c#类型转换
星河队长5 小时前
C# 软件加密方法,有使用时间限制,同时要防止拷贝
开发语言·c#
Aevget7 小时前
DevExpress WinForms v25.1亮点 - PDF Viewer(查看器)等全新升级
pdf·c#·界面控件·winform·devexpress·ui开发
InCerry7 小时前
为 .NET 10 GC(DATAS)做准备
性能优化·c#·.net·gc
曹牧8 小时前
C#:可选参数
开发语言·c#
Sunsets_Red11 小时前
差分操作正确性证明
java·c语言·c++·python·算法·c#
Aevget12 小时前
DevExpress WPF中文教程:Data Grid - 如何使用虚拟源?(一)
c#·wpf·界面控件·devexpress·ui开发
weixin_4569042713 小时前
以太网与工业以太网通信C#开发
开发语言·c#
虚行14 小时前
C#项目连接S7-PLCSIM Advanced读写操作
开发语言·python·c#
“抚琴”的人14 小时前
C#中获取程序执行时间
服务器·前端·c#