NET Core Introduction

Source: Internet
Author: User
Tags dotnet

1. Preface

. NET has been in circulation for 14 years now. As the version continues to iterate over the update. NET on the Windows platform is also getting better, and it can be said that all the application types on the Windows platform. NET can be done almost.

Just become also windows, defeated also Windows, which for 14 of years, in addition to part of the "folk" version. NET has not been able to get rid of the limitations of the Windows platform with official support, "open source" and "cross-platform" are all the two words. NET Developer's pain. Finally,. NET core emerged, which allows developers to go out of windows with official and community support, writing debugging and deploying. NET programs on Macos,linux mainstream distributions.

2. Introduction to. NET Core

what is 2.1. NET Core

. NET core is an open-source, common development framework that supports cross-platform development and deployment on systems such as Window,macos,linux, and can be used in hardware devices, cloud services, and embedded/IoT scenarios. The source of the. NET core is on GitHub , supported by Microsoft's official and community partners.

It is a "subset-superset" relationship with the traditional. NET Framework, or you can simply assume that it is a cross-platform version of the. NET Framework (as seen on the Bcl-based level). This is because in the current version (1.0), most of the core code in. NET core is inherited from the. NET Framework, including runtime and libraries (such as GC, JIT, partial types).

Spit Groove: Can only thank Microsoft "CLR via C #" Do not look white, I have seen a little half a year before reading

Now the. NET Core 1.0 release is a small core, and the APIs and tools are not complete, but as the. NET core continues to evolve, complementary APIs and innovations are integrated into the. NET Framework. That is,. NET core Microsoft updates the. NET Framework and. NET core at the same time, and they are like two brothers who work together to get rich. Of course it is. NET developers) to achieve the so-called World of Datong, which is. NET Standard 2.0

Here we have to mention a concept called. NET standard Library. As. NET Platform APIs development official support standard, it requires all the. NET Framework APIs follow backwards compatibility. For example,. NET Framwork 4.6 supports the. NET Standard library 1.3,.net framwork 4.6.2 Framework, which supports. NET Standards Library 1.5, while the. NET Core 1.0 Framework supports 1.6.

The final Outlook is as follows:

2.2. NET Core Composition

    • . NET Runtime
      That is coreclr. As previously mentioned, CORECLR is no different from the CLR of the. NET framework, Process Management, Gc,jit (RyuJIT compiler) These parts are all the same, just for the server system to do the corresponding optimization. Now the CLR and CORECLR are also synchronizing updates, but to be sure, CORECLR is the future of. NET, and the CLR will exist as a means of compatibility.

    • Framework Libraries,
      That is Corefx. Including collection classes, file system processing classes, XML processing classes, asynchronous task classes, etc.

    • SDK Tools and Language Compilers (SDK tool and compiler)
      That is, the CLI tool and the Roslyn compiler. Available through the. NET core SDK (. NET core Development Kit).

    • Dotnet ' app host
      Used to select and execute the corresponding runtime, provide component onboarding principles, and start the. NET core application. The SDK is also started by the same program.

      Tips: Do you think of MSCorEE.dll this gasket, which also carries the work of choosing a CLR version of a. NET application on the Windows platform

2.3. NET Core Features

    • Cross-platform
      Can be run on Windows,macos,linux

    • A flexible deployment mechanism

1.Portable Applications (Portable application)
This deployment mechanism is similar to the traditional. NET Framework, as long as there is a. NET Core runtime on the target platform.

2.self-contained Application (self-hosted application)
As the name implies, this deployment mechanism packages the application and runtime together, even if no. NET Core Runtime is installed on the target platform

The second approach is not the same as. NET native, still using CORECLR, while. NET native uses Corert as the runtime, see Dotnet/corert for more information

    • Command-line tools
      . NET program all run scripts can be executed with command-line tools (Cmd,bash) Here are a few common donnet commands
instruction Help
dotnet New Generate new basic. NET Project content (including Project.json, Program.cs, and Nuget.config
dotnet Restore Restore the referenced NuGet package
dotnet Build Building a. NET project
dotnet Publish Generate a redistributable. NET project (including the Runtime that belongs to)
Dotnet Run Compile and run. NET projects immediately (more suitable for EXE projects)
dotnet REPL Guide Interactive Conversations
Dotnet Pack Package the output of a project into a NuGet package
    • Compatibility
      Compatible with. NET Framework,xamarin,mono through the. NET Standard library

    • Open source
      . NET core belongs to the. NET Foundation and is officially supported by Microsoft. Using the MIT and Apache 2 Open source protocols, document protocols follow cc-by

2.4 Development Language

The programming languages supported in. NET Core 1.0 are in C # only (F # and VB are not implemented), and there is an open source language compiler, Roslyn, which compiles the code into our familiar Il language, which is then compiled by the AOT or JIT compiler into machine language that is familiar to machines.

NET Core Introduction

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.