.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. 8.【Spring Cloud Alibaba】配置管理-Nacos

    使用Nacos管理配置 架构图 配置文件遵循的格式 bootstrap.yml pom.xml <dependency> <groupId>org.springframewor ...

  2. openpyxl(python操作Excel)

    一.安装 >>> pip install openpyxl import openpyxl 二.常用操作 1.创建与保存一个工作簿 wb = openpyxl.Workbook() ...

  3. Particle Filter Algorithm

    目录 问题提出 算法研究现状 算法原理 问题提出 在现实科研问题中,其中有很多都是非线性的.要想求得问题的解,就需要非线性的算法.所谓非线性滤波,就是基于带有噪声的观测值,估计非线性系统动态变化的状态 ...

  4. web博客

    欢迎大家来戳一戳

  5. 【WPF学习】第五十四章 关键帧动画

    到目前为止,看到的所有动画都使用线性插值从起点到终点.但如果需要创建具有多个分段的动画和不规则移动的动画.例如,可能希望创建一个动画,快速地将一个元素滑入到视图中,然后慢慢地将它移到正确位置.可通过创 ...

  6. @JsonFormat、@DateTimeFormat注解,读取数据库晚一天问题

    @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss&qu ...

  7. MVC04

    1. 从页面到action 讲述controller与View之间的具体运作关系 在上次添加的名为Movie的Model内添加 下面我们尝试为该model内的属性添加attribute 具体修改如下: ...

  8. redis系列之------过期策略

    前言 我们都知道redis是常驻在内存当中的,因此他的效率比MySQL要快很多很多.但又引发了另外一个问题,内存从本质上讲,它是昂贵的,不能用于大量的长时间的存储,他是“不安全不稳定的“,并且有可能存 ...

  9. vue用template还是JSX?

    各自特点 template 模板语法(HTML的扩展) 数据绑定使用Mustache语法(双大括号) <span>{{title}}<span> JSX JavaScript的 ...

  10. model进阶

    本节目录 一 QuerySet 二 中介模型 三 查询优化 四 extra 五 整体插入 一 QuerySet 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMI ...