C#、.NET、运行时和常见框架

60 阅读2分钟

1.1 发展过程

在互联网大潮的影响下,1999年,微软准备开发自己的C-like Object Oriented Language(COOL),于是乎在2000年,微软正式发布了C# 1.0,与之同时发布的还有.NET Framework 1.0。

刚入门C#,我们可能听说过各种概念,比如.NET,.NET Core,.NET Framework、ASP .NET Core,WinFrom,WPF,MAUI等各种概念,对于初学者来说可能会晕头转向,至少在我刚入职,我知道现在学习的是C#,那我接下来该学习什么呢?

接下里我们将简单说明下各个运行平台和框架的演变与用处

在上面提到的概念中,.NET、.NET Core、.NET Framework 是运行平台,而ASP.NET ,ASP.NET Core、WinForms、WPF、MAUI 则是提供特定功能的框架,帮助你快速开发应用。

1.2 运行时

首先我们知道C#是一门语言,语言只定义了语法和规则,每一种语言编译到机器码给电脑识别执行的过程都是不一样的,那么就需要不同的工具来解释这种语言给电脑,因此就有运行时(CLR)这个概念。

通用语言执行平台(CLR-Common Language Runtime)是微软给他们的.Net运行平台虚拟机选用的名称,它定义了代码的执行环境,负责把C#等语言编译出来的中间语言(IL)翻译成机器码(JIT编译),执行内存管理(垃圾回收 GC)、异常处理、安全性检查、多线程等。其实就类似Java中JVM的概念

1.3 .NET

.NET是微软设计的开发平台,集成了开发语言(C#,F#,VB.NET,C++等),运行时,基础类库(BCL-Basic Class Library),和应用框架(ASP.NET Core、WinForms、WPF、MAUI )

1.3.1 演变过程

.NET Framework是微软最老的.NET平台,只能运行在Windows上,后来随着跨平台的发展,微软在2016年推出了.NET Core,这一代.NET平台支持了跨平台,在2020年,微软宣布 .NET Core 和 .NET Framework 合并,统一称为 “.NET”。

1.4 开发框架

开发框架是建立在.NET平台上的一系列快速开发工具,能够利用他们快速开发特定类型的应用,而不用再从零搭轮子

1.4.1 常见的 .NET 应用框架

ASP.NET / ASP.NET Core                                      Web应用、Web API
WinForms (Windows Forms)                                    桌面应用 (GUI)  
WPF (Windows Presentation Foundation)                       桌面应用 (现代 UI)    
MAUI (Multi-platform App UI)                                跨平台桌面 + 移动应用    
Blazor                                                      Web 前端  
Unity (游戏引擎)                                             游戏开发