.NET概述 #

一、.NET平台简介 #

1.1 什么是.NET #

.NET是微软开发的开发平台,支持构建各种类型的应用程序。

1.2 .NET历史 #

版本 年份 说明
.NET Framework 2002 Windows专用
.NET Core 2016 跨平台
.NET 5+ 2020 统一平台

二、.NET架构 #

2.1 架构组成 #

text
应用程序
    ↓
.NET类库 (BCL)
    ↓
运行时 (CLR)
    ↓
操作系统

2.2 核心组件 #

组件 说明
CLR 公共语言运行时
BCL 基类库
Roslyn C#编译器
NuGet 包管理器

三、公共语言运行时(CLR) #

3.1 CLR功能 #

  • 内存管理
  • 类型安全
  • 异常处理
  • 垃圾回收
  • JIT编译

3.2 垃圾回收 #

csharp
public class Example
{
    public void CreateObjects()
    {
        for (int i = 0; i < 1000; i++)
        {
            var obj = new LargeObject();
        }
    }
}

GC.Collect();
GC.WaitForPendingFinalizers();

3.3 内存代 #

说明
Gen 0 短期对象
Gen 1 缓冲区
Gen 2 长期对象

四、基类库(BCL) #

4.1 常用命名空间 #

命名空间 说明
System 基本类型
System.Collections 集合
System.IO 输入输出
System.Linq LINQ查询
System.Net 网络
System.Threading 多线程

4.2 常用类型 #

csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Threading.Tasks;

int number = 42;
string text = "Hello";
var list = new List<int>();
var query = list.Where(x => x > 0);

五、.NET SDK #

5.1 SDK组成 #

  • 编译器
  • 运行时
  • 工具
  • 模板

5.2 常用命令 #

bash
dotnet new console -n MyApp
dotnet build
dotnet run
dotnet publish -c Release
dotnet test
dotnet add package Newtonsoft.Json

六、跨平台支持 #

6.1 支持平台 #

  • Windows
  • macOS
  • Linux
  • Docker

6.2 发布选项 #

bash
dotnet publish -r win-x64
dotnet publish -r linux-x64
dotnet publish -r osx-x64
dotnet publish -r win-x64 --self-contained

七、总结 #

.NET要点:

要点 说明
CLR 运行时
BCL 类库
SDK 开发工具
跨平台 Win/Mac/Linux

下一步,让我们学习NuGet包管理!

最后更新:2026-03-26