K & DN 的前世今生(微软开源命名变革)
一个非常有意思的 Issue:Can we rename K?
在这个 Issue 中,有大量的社区开发者讨论了微软开源命名问题,主要是 K
如何进行替换掉?看来大伙都对微软项目命名有歧义,首先,再次梳理下有关 K
的一些项目:
- K:ASP.NET vNext 项目代号 Project K,简称 K,下面项目都是以它为前缀命名。
- K Commod:ASP.NET 5 应用程序进入 KRE 的入口命令,如
k run
、k web
,可以看作是一把车钥匙,详细介绍:Command-Line - KRE(K Runtime Engine):ASP.NET 5 应用程序的运行时,包含:compilation system, SDK tools, native CLR hosts,详细介绍:DNX-structure
- KLR(K Language Runtime):当使用 Self-Hosting,用来加载 CLR,详细介绍:KRuntime-structure
- KVM(K Version Manager):KRE 的版本管理器,详细介绍:Version-Manager
- KPM(K Package Manager):ASP.NET 5 应用程序的程序包管理器,详细介绍:Package-Manager
注意,上面项目命名都是之前的,Issue 中主要讨论的是 k
、kpm
、kre
、xre
、kvm
的命名,像core
、coreclr
、corefx
、corefxlab
的命名并没有被讨论(看来大伙是接受的),简要总结下讨论过程:
- k -> dotnet -> dn(最终版)
- kpm -> dotnet -> nuget -> dotnpm -> dotnetpm -> dnpm(最终版)
- kvm -> dotnetsdk -> dotnvm -> dotnetvm -> dnvm(最终版)
- k and kvm -> dotnet -> 合并(否决)
- kre/xre -> dnx(未经讨论确定)
两点感触:
- 社区的力量不可想象。
- 语言限制国内 .NET 社区的发展。
相关资料:
- ASP.NET 5中的那些K
- 从KRE到XRE:ASP.NET 5中正在消失的那些K
- Command name collision with "kvm" command from Linux Kernel-based Virtual Machine
- Rename to dotnetsdk
- Rename klr to dotnet
- Update aspnet50/aspnetcore50 => dnx50/dnxcore50
- K (dnu), KVM (dnvm), KPM (dnu), KLR, KRE (dnx) in ASP.NET 5 (vNext)
时间: 2024-10-06 18:37:46