.NET Core 概述

.NET Core是一个免费的、开源的、跨平台的、广泛使用的Web框架;它是由微软维护的。社区广泛参与支持的一个框架。.NET Core可以运行在:Windows、MacOS以及Linux操作系统上。

.Net Core可以用来开发各种不同的应用程序,例如:移动端、桌面端、Web、Cloud、IoT、机器学习、微服务、游戏开发等等。

.Net Core是从头到尾重新开发的一个模块化、轻量级、快速的、跨平台框架。它包含了运行一个.NET Core基本程序所必须的核心特性。其他特性,例如:Nuget包,你可以根据需要添加到应用程序中,所以.Net Core启动快,内存占用少,并且易于维护。

为什么使用.NET Core

.Net Framework有一些限制。例如,它只能运行在Windows平台上,此外还有,你需要针对不同的平台应用程序,例如:Windows桌面应用程序、Windows应用商店、Windows Phone以及Web应用程序,使用不同的.NET APIS;除此之外,.NET Framework自身的依赖项太多,应用程序任何一点小的改动,都会要修改很多地方。

时代发展到今天,跨平台的应用程序开发变得非常重要,通过跨平台开发,我们可以写一处代码,就可以各个平台都可以运行。使用.NET Core就可以轻松做到这一点。

.NET Core 优点

1.开源的框架:.NET Core是一个开源的框架,由微软维护,在Github上的地址是:https://github.com/dotnet/core ,此外.NET Core是一个.NET 基金会项目 。

你可以查看、下载、以及贡献源代码,通过下方的GitHub仓库:

2.跨平台:.Net Core可以运行在Windows、MacOS以及Linux操作系统上,对于每个操作系统有不同的.net core运行时,执行代码,生成相同的输出;

3.一致的架构:在不同的指令集架构中,以相同的行为执行代码,包括:x64、x86以及ARM。

4.支持广泛领域的应用:各种不同类型的应用程序,都能被开发并且运行在.NET Core平台上,例如:移动端应用程序、桌面端应用程序、Web网页应用程序、Cloud云应用、IoT物联网应用、机器学习、微服务、游戏开发领域等等。

5.支持多个语言:你可以使用C#、F#、以及Visual Basic编程语言来开发.NET Core应用程序。你可以使用你自己喜欢的开发工具【IDE】,包含:Visual Studio2017/2019、Visual Studio Code、Sublime Text、Vim等等。

6.模块化的结构:.Net Core通过使用Nuget包管理,支持模块化开发。有各种不同的Nuget包,可以根据需要添加到你的项目中,甚至.NET Core 类库也是以包管理的形式提供的。.NET Core应用程序默认的包就是:Microsoft.NETCore.App ,模块化的结构,减少了内存占用,提升了性能,并且更易于维护。

7.CLI工具:.Net Core包含CLI工具(Command-line interface)用于开发和持续集成。

8.更灵活的部署:.Net Core应用程序可以部署在用户范围内、或者系统范围内、或者Docker容器中;

9.兼容性:.NET Core通过使用.NET Standard标准,可以兼容.NET Framework以及Mono的API ;

.Net Core历史版本

.NET Core 3.1和2.1将会长期支持

.NET Core 3.x 应用程序只能运行在.Net Core 框架上

.Net Core 2.x 应用程序可以运行在.NET Core和.NET Framework上

.Net Core的组成

.NET Core框架由下面几个部门组成:

CLI 工具:一系列用于开发和发布的工具;

Roslyn: C#、Visual Basic语言编译器;

CoreFX: 一系列的框架类库;

CoreCLR:基于CLR的即时编译器(Command Language Runtime)

有用的资源链接

在这里可以找到.NET Core 类型以及成员声明、文件、以及程序集:.NET Core Source Browser ;

获取.NET Core 类型帮助:.NET Core API Reference Docs ;

详细学习.NET Core,可以看这个: https://docs.microsoft.com/en-us/dotnet/core ;

下载.NET Core运行时以及SDK: https://dotnet.microsoft.com/download/dotnet-core ;

https://docs.microsoft.com/en-us/dotnet/core

1.NET Core 概述的更多相关文章

  1. [翻译] EF Core 概述

    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ...

  2. oracle core 概述

    oracle数据库系统的架构及其复杂,其提供的特性也非常的多.作为一种关系型数据库,oracle提供的基本特性: transaction concurrency read consistent 而支撑 ...

  3. EF Core in Action 中文翻译 第一部分导航

    Entityframework Core in action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Core ...

  4. EF Core 快速上手——EF Core 入门

    EF Core 快速上手--EF Core 介绍 本章导航 从本书你能学到什么 对EF6.x 程序员的一些话 EF Core 概述 1.3.1 ORM框架的缺点 第一个EF Core应用   本文是对 ...

  5. 使用Visual Studio Team Services持续集成(一)——构建ASP.NET Core

    使用Visual Studio Team Services持续集成(一)--构建ASP.NET Core 概述 持续集成(CI)是将代码尽可能频繁地集成到共享仓库中的过程.在代码集成期间,构建中断或测 ...

  6. 《闲聊 ASP.NET Core》系列直播清单

    [闲聊 ASP.NET Core]第一期:项目与应用结构 [闲聊 ASP.NET Core]第二期:Web Host 初始化与生命周期事件 [闲聊ASP.NET Core]第三期:应用程序配置 [闲聊 ...

  7. 6. [mmc subsystem] mmc core(第六章)——mmc core主模块

    一.说明 1.mmc core概述 mmc core主模块是mmc core的实现核心.也是本章的重点内容. 对应代码位置drivers/mmc/core/core.c. 其主要负责如下功能: mmc ...

  8. ASP.NET Core新书终于上市,完成今年一个目标,赠书活动

    2018年.NET Core 2.0发布后,开始逐步学习.NET Core 并逐步在新的项目中使用ASP.NET Core.并且零零散散写的写了将近30篇学习笔记发到园子里,包括ASP.NET Cor ...

  9. ASP.NET Core 6 从入门到企业级实战开发应用技术汇总

    系列目录     [已更新最新开发文章,点击查看详细] 本系列博客主要介绍.NET6相关技术,从基础入门.进阶提升到高级升华,最后通过一个企业级项目实战来检验技术应用能力.把个人技术与经验分享出来,抛 ...

随机推荐

  1. 【Network telemetry】谈谈网络遥感技术,从主动探测与被动探测再到Netflow与INT

    [前言] [本篇为原创]网络遥感,Network telemetry,为什么叫“telemetry”呢?我个人的理解是将网络中的数据进行一种“采集”,也就是实际上是一种网络数据的采集手段.由于工作需要 ...

  2. java基础进阶篇(二)_Arraylist ------【java源码栈】

    前言 ArrayList 在开发中用到的频率很高,其中原生态提供的方法有一些很好用的重载版本,其中有的坑该跳得跳啊. 一.ArrayList的6种初始化方法1.构造方法 参数为空2.构造方法 参数为L ...

  3. 后渗透之meterpreter使用攻略

    Metasploit中的Meterpreter模块在后渗透阶段具有强大的攻击力,本文主要整理了meterpreter的常用命令.脚本及使用方式.包含信息收集.提权.注册表操作.令牌操纵.哈希利用.后门 ...

  4. 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/ZRjGGy 可交互视频 此视频是可 ...

  5. EventEmitter:从命令式 JavaScript class 到声明函数式的华丽转身

    新书终于截稿,今天稍有空闲,为大家奉献一篇关于 JavaScript 语言风格的文章,主角是函数声明式. 灵活的 JavaScript 及其 multiparadigm 相信"函数式&quo ...

  6. Django进行数据迁移时,报错:(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(6) NOT NULL)' at line 1")

    进行数据迁移时: 第一步: 命令:python manage.py makemigrations 在对应的应用里面的migrations文件夹中产生了一个0001_initial.py文件 第二步:执 ...

  7. 【Python challenge】通关代码及攻略(0-11)

    前言: 最近找到一个有关python的游戏闯关,这是游戏中的思考及通关攻略 最开始位于:http://www.pythonchallenge.com/pc/def/0.html 第0关 题目分析 提示 ...

  8. Python学习之布尔和数字

    布尔有True和Flase两种值 数字0.None,以及元素为空的容器类对象都可视为False,反之为Ture.

  9. ubuntu 安装flask+nginx+gunicorn 待定

    第一步 先检查服务器环境   pip python3 mysql redis 能下就下,该升级就升级 第二步 如果你的flask程序在github上 请使用git clone 地址 下载下来(如果是私 ...

  10. python装饰器见解笔记

    def zsq(fun): def zsq_n(*args,**kwargs) print('这是装饰器需要运行内容') r = fun(*args,**kwargs) print('在被装饰函数执行 ...