On June 27, 2016, version 1.0 of .NET Core, ASP.NET Core and Entity Framework Core was released. These new products are the future of .NET, ASP.NET and Entity Framework. They are a redesign version of already available products from Microsoft. The "Core" products have a high-performance and modular design. Beside this all products are cross-platform and are available on Mac OS, Windows and Linux. Another important thing is that they are all open-source. With the introduction of these new products, Microsoft created a new set of tools.
On the Windows platform, the most important IDE to develop applications for .NET is Visual Studio. For integration of the new products, Microsoft created a new extension for .NET Core which provides all necessary SDK for creating and running applications. Before starting to develop a .NET application, you need to have Visual Studio Update 3 and .NET Core Tools for Visual Studio installed. Both, the update and tools, can be found on the official Microsoft .NET Core page.
Since we're all familiar with the Visual Studio development environment, the next part will be more focused on new command line tools from the framework which helps developing new applications with .NET Core.
The new CLI tool is called dotnet and is often referred as dotnet CLI to prevent misunderstanding with .NET. This new tool changes the way we handle builds in .NET Core and adds more features. To give you an idea, once you have the SDK installed, you can type these three simple commands for your first "Hello World" app. The first generates a console app, the second restores package dependencies and the last builds and runs the app.
dotnet new dotnet restores dotnet run
By typing dotnet --help you can see all available command and what each command does. Bellow can be seen the output.
.NET Command Line Tools (1.0.0-preview3-003221) Usage: dotnet [host-options] [command] [arguments] [common-options] Arguments: [command] The command to execute [arguments] Arguments to pass to the command [host-options] Options specific to dotnet (host) [common-options] Options common to all commands Common options: -v|--verbose Enable verbose output -h|--help Show help Host options (passed before the command): -v|--verbose Enable verbose output --version Display .NET CLI Version Number --info Display .NET CLI Info Common Commands: new Initialize a basic .NET project restore Restore dependencies specified in the .NET project build Builds a .NET project publish Publishes a .NET project for deployment (including the runtime) run Compiles and immediately executes a .NET project test Runs unit tests using the test runner specified in the project pack Creates a NuGet package
This new command line interface combined with Visual Studio and Visual Studio Code form the new way of developing applications targeting .NET Core framework. The dotnet command line interface is not fully released and it's in preview form, so feedback is very welcomed for the tools. People who want to get involved in helping with development can contribute to the github project repository.
All in all, I found .NET CLI a good tool for developers who are developing applications with .NET Core. In my opinion, this command line interface is very exciting because I see a different way of working with Microsoft technologies outside of the classical Visual Studio IDE experience.