K & DN 的前世今生(微软开源命名变革)

K & DN 的前世今生(微软开源命名变革)_第1张图片

一个非常有意思的 Issue:Can we rename K?

在这个 Issue 中,有大量的社区开发者讨论了微软开源命名问题,主要是 K 如何进行替换掉?看来大伙都对微软项目命名有歧义,首先,再次梳理下有关 K 的一些项目:

  • K:ASP.NET vNext 项目代号 Project K,简称 K,下面项目都是以它为前缀命名。
  • K Commod:ASP.NET 5 应用程序进入 KRE 的入口命令,如 k runk 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 中主要讨论的是 kkpmkrexrekvm 的命名,像 corecoreclrcorefxcorefxlab 的命名并没有被讨论(看来大伙是接受的),简要总结下讨论过程:

  • k -> dotnet -> dn(最终版)
  • kpm -> dotnet -> nuget -> dotnpm -> dotnetpm -> dnpm(最终版)
  • kvm -> dotnetsdk -> dotnvm -> dotnetvm -> dnvm(最终版)
  • k and kvm -> dotnet -> 合并(否决)
  • kre/xre -> dnx(未经讨论确定)

两点感触:

  1. 社区的力量不可想象。
  2. 语言限制国内 .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)

你可能感兴趣的:(K & DN 的前世今生(微软开源命名变革))