聊聊 .NET Core

关于 .NET Core

.NET Core 的正式版终于发布了。.NET Core 是一个开源项目。根据官方的说法,.NET Core 是跨平台的(当然它的确是跨平台的)。
我们常说的 .NET 通常指的是.NET Framework,通常只运行于 Windows。两者的关系用官方的图来表示就是这样:

他们有一个共同的子集。

恩,据说这玩意以后还要收费?不知道是不是我理解错了。要是我理解错了求英语好的来给我解释一下。原文如下:

Finally, .NET Core will be “pay-for-play” and performant. One goal of the .NET Core effort is to make the cost of abstraction clear to developers, by implementing a pay-for-play model that makes obvious the costs that come from employing a higher-level abstraction to solve a problem. Abstractions don’t come for free, and that truth should never be hidden from developers. Additionally, .NET Core will favor performance with a standard library that minimizes allocations and the overall memory footprint of your system.

.NET CLI

.NET Core 提供了 .NET CLI(Command Line Interface),可以通过命令行来完成程序的编译,相关命令如下:

命令 说明
dotnet new 使用 C# 语言初始化用于类库或控制台应用程序的有效项目。
dotnet restore 还原在指定项目的 project.json 文件中定义的依赖项。依赖项通常是您在应用程序中使用的 NuGet 包。
dotnet build 生成您的代码! 此命令将生成适用于您的项目的中间语言 (IL) 二进制。如果项目是控制台应用程序,则产生的输出是可执行的,您可以立即运行。默认情况下,生成命令会将生成的程序集和可执行文件(如果适用)输出到调用位置目录的 bin 目录中。
dotnet test 如果不支持运行测试,则不会出现适合的工具。此命令让您可以使用在 project.json 文件中指定的运行程序运行一组测试。目前支持 xUnit 和 NUnit 测试运行程序。
dotnet publish 发布在目标计算机上运行的应用程序。
dotnet pack pack 命令会把您的项目打包成 NuGet 包。输出一组 nupkg 文件后,您可以将其上载至您的源,或使用本地文件夹替代将其用于还原操作。
dotnet run 运行命令将编译并运行您的应用程序。您可以将其看作没有 Visual Studio 的 Ctrl+F5 模拟。

.NET Core 依赖 NuGet 提供的各种包。开发者也可以把自己的类库打包成 NuGet 包共享到 NuGet

参考来自

https://msdn.microsoft.com/en-us/magazine/mt694084.aspx