last update
2025-12-31 17:33

🚀 2026:让.NET再次伟大

2026年,应该考虑一个战略决策——将.NET SDK纳入操作系统,这将对整个开发生态产生深远影响。

💡 开篇:单文件运行打开的新世界

.NET 10在多方面有显著进展,单文件运行的支持为新的使用场景打开了可能性。一个.cs文件就是一个完整的程序,这为开发范式的转变提供了基础。

单文件运行带来的实际应用场景:

核心价值: 一个.cs文件 = 一个完整的、类型安全的、高性能的.NET程序。部分场景不再需要复杂工具链、CICD、Docker——只需一个.cs文件。

🔍 遇到的障碍

单文件很好很强大,但它有一个前提条件:需要安装 .NET 10 SDK,这是最后一堵墙,需要被打破。

现状困境: 用户需要先安装.NET SDK才能运行.cs文件,这个前置条件立即提高了门槛。

解决方案: 让.NET SDK成为操作系统的一部分——从Windows开始,然后推广到主流Linux发行版。

🎯 战略价值一:认知刷新

当Windows或主流Linux发行版自带.NET SDK时,新的开发者和用户的认知将会逐渐改变。

集成.NET SDK,Windows就拥有了统一的、功能完备的开发工具链.NET 运行环境,有了这个优势,它将成为上手编写程序最便捷的操作系统。也是运行.NET应用的首选平台。

回顾一下,很多年前,Linux一些发行版就预装了Python和PHP等环境,这极大推动了这些语言的流行,开发者在这些系统上,无需额外安装环境,就能直接上手编写和运行脚本,它们被认为是对开发者友好的操作系统。

不同于老旧和封闭的.NET Framework,现代.NET已被广大开发者认可,将.NET SDK直接带到操作系统中,不仅不会引起反感,反而会被视为对开发者友好的举措,它的单文件运行更加强大,更有发挥的空间。

战略价值二: 统一工具链标准

在开发行业,工具链是绕不开的话题。.NET在这方面堪称典范。当操作系统自带一套标准工具链时,开发者和用户都将受益匪浅。同时也会推动其他生态进行反思和改进。

来看看最火爆的两个生态:

Python生态:

依赖管理:pip → venv/virtualenv → Poetry/Pipenv → requirements.txt/Pipfile
构建工具:setuptools → wheel → flit → poetry → hatch
测试框架:unittest → pytest → nose → hypothesis
代码检查:pylint → flake8 → black → isort → mypy
部署工具:gunicorn → uwsgi → docker

Python开发者需要学习和维护7-8种不同工具,每个项目配置各异。

Node.js生态:

包管理:npm → yarn → pnpm(互不兼容的lock文件)
构建工具:webpack → Rollup → Parcel → Vite → Turbopack
测试框架:Jest → Mocha → Vitest → Playwright
运行环境:node → deno → bun

Node.js开发者面对版本地狱和工具频繁更替

而.NET Core 从1.0到10.0,一个dotnet命令统一一切

dotnet new          # 项目创建
dotnet build        # 编译
dotnet test         # 单元测试
dotnet run          # 运行
dotnet publish      # 发布(含AOT编译、容器化)
dotnet tool         # 工具管理
dotnet add package  # 依赖管理
dotnet format       # 代码格式化
dotnet diagnostics  # 性能诊断
dotnet ef           # 数据库迁移

Important

当其他生态炒作用Rust重构工具链的性能提升时,.NET从第一版起就用一个dotnet命令解决了所有问题。哦对了,.NET不需要版本管理工具,多版本可同时安装且互不干扰。

Windows自带.NET SDK的影响

无论是对开发者还是用户,这都是一个极大提升开发体验和用户体验的变革

🌐 战略价值三:生态影响

软件分发的范式转变

当前模式的痛点:

系统级.NET SDK带来的新可能:

未来生态格局

当运用得当时,将形成这样的生态:

Important

能用C#编写的应用,最终都应使用C#编写;能用.NET运行的程序,最终都会使用.NET运行。

.NET在AI领域的竞争力

当前AI开发生态高度依赖Python,用户端工具常选择Node.js,企业级开发由于巨大的惯性逐渐转向Java。然而,.NET在AI开发领域拥有被低估的竞争优势:

优势维度 具体价值
性能 相比Python和Node.js有明显优势
类型安全 大型AI项目中显著减少运行时错误
文档处理 丰富的PDF、Word、Excel类库支持
Aspire 简化服务配置,内置遥测支持(AI应用基本需求)
单文件运行 可嵌入工作流,如在skills场景直接运行.cs处理逻辑
Azure Azure对.NET SDK的第一方支持

如果.NET SDK成为操作系统组件,这些优势将更易被开发者发现和利用,推动.NET在AI开发领域的采用。

🚀 实现路径:让愿景成真

让微软,尤其是Windows团队认识到这一战略机遇

社区发声:

内容创作:

Important

Windows不预装.NET,这就像是Windows不预装Edge浏览器,Android不预装Chrome浏览器一样让人费解,纯属是自费武功!

不作为的借口

我已经预料到一些人找出各种理由反对这个想法,找出各种借口,说出各种政治正确的理由,如:

多了解真正用户的声音,少听一些只会讲政治正确的非目标用户,多一些实际行动,真正做一些有益于生态发展的事情。

Tip

你可以借助本篇文章内容,结合自己的观点,创作更多相关内容,推广这个愿景。