文章目的:.Net Core 3.0学习笔记整理与分享。

面向人群:有一定基础的C#开发人员或学习人员(C#语法一定要掌握)。

笔者水平:中级C#开发攻城狮(水平有限,写的不对的地方希望大家指正)。

文章特点:绝对的通俗,绝对的易懂,绝对原创。(觉得小弟写的不错的朋友,麻烦动动小手给个双击——开玩笑的!)


.Net Core 3.0 简介

  .Net Core 3.0是微软刚发布的一款跨平台开源开发框架平台,它的特性就是:【高性能】、【跨平台】、【用途广】、【开源】、【爸爸屌】、【C#语言屌】【VS集成开发环境屌】。这些特性让.Net Core 3.0未来发展潜力十足,我个人认为.NET 将是未来企业级应用第一编程框架平台,大家可以期待一下,所以大家这回可以坚定的抱紧微软爸爸的大腿。

  下图是说明.NET Core为啥可以跨平台的原因,简单的说就是因为它重写了底层(指CoreCLR、CoreFX等),并且底层无系统依赖性,这样就可以使任何系统都可以通过.Net Core的底层去处理通过.NET Core开发的程序。

PS:图中具体技术名称如:CLR、BCL大家可以百度一下,很好理解的。


  • ASP.NET Core 具有如下优点(看不懂也无所谓,你知道它很牛逼就对了):
  1. 生成 Web UI 和 Web API 的统一场景(在MVC项目下,控制器即可以返回视图,也可以当做WebAPI接口用)。
  2. 集成新式客户端框架和开发工作流。
  3. 基于环境的云就绪配置系统。
  4. 内置依赖项注入。
  5. 轻型的高性能模块化 HTTP 请求管道。
  6. 能够在 IIS、Nginx、Apache、Docker 上进行托管或在自己的进程中进行自托管。
  7. 定目标到 .NET Core 时,可以使用并行应用版本控制。
  8. 简化新式 Web 开发的工具。
  9. 能够在 Windows、macOS 和 Linux 进行生成和运行。
  10. 开放源代码和以社区为中心。

  • .Net Core 3.0部署应用的两种方式:
  1. 可以像.NET Framework那样先往系统内(windows、linux均可)安装.Net Core框架,然后我们部署应用程序的时候,只需部署我们开发的部分即可(依赖框架的部分从系统中安装的.NET Core框架获取)(缺点是增加了部署目标系统的臃肿程度)。
  2. 我们也可以直接将我们要部署的应用程序及其对.NET Core框架的依赖包打包成一个整体文件,再部署到目标系统中(缺点是文件安装包较大)。

  这部分我们可以举个栗子:比如说10个人要去舞台上表演变脸,他们每个人要用的脸谱都不一样(这里舞台就是系统,人就是程序)。如果我们采用方式1部署应用,这就相当于我们在表演前,要将所有人都用的脸谱都藏在舞台里,每个上台表演的人上台后从舞台里拿出自己要用的脸谱,然后进行表演。如果我们采用方式2部署应用,这就相当于我们不用布置舞台,每个人将自己要用的脸谱放在自己口袋,直接上去表演就行。(这两种方法的选择那就是仁者见仁,智者见智了,各有优缺点)。

  

[.Net Core 3.0从入门到精通]1.笔记简介及.Net Core3.0介绍的更多相关文章

  1. 【转】Zabbix 3.0 从入门到精通(zabbix使用详解)

    [转]Zabbix 3.0 从入门到精通(zabbix使用详解) 第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源   网站/ ...

  2. Dubbo入门到精通学习笔记(十八):使用Redis3.0集群实现Tomcat集群的Session共享

    文章目录 1.单节点访问http://192.168.1.61:8082/pay-web-boss/: 2.增加多一个消费者节点:192.168.1.62,以同样的方式部署pay-web-boss工程 ...

  3. MySQL数据库应用 从入门到精通 学习笔记

    以下内容是学习<MySQL数据库应用 从入门到精通>过程中总结的一些内容提要,供以后自己复现使用. 一:数据库查看所有数据库: SHOW DATABASES创建数据库: CREATE DA ...

  4. MyBatis从入门到精通(第5章):5.4 Example 介绍

    jdk1.8.MyBatis3.4.6.MySQL数据库5.6.45.Eclipse Version: 2019-12 M2 (4.14.0) MyBatis从入门到精通(第5章):MyBatis代码 ...

  5. Oracle从入门到精通----学习笔记

    书名:<Oracle从入门到精通:视频实战版>秦靖.刘存勇等编著 第4章 SQL基础 1.SQL语言分类 数据定义语言 --- DDL,Data Definition Language 数 ...

  6. Dubbo入门到精通学习笔记(八):ActiveMQ的安装与使用(单节点)、Redis的安装与使用(单节点)、FastDFS分布式文件系统的安装与使用(单节点)

    文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测 ...

  7. Dubbo入门到精通学习笔记(三):持续集成管理平台之SVN版本管理系统的安装和使用

    文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单 ...

  8. php入门到精通(复习笔记)

    第一章:php语言基础 1,标记风格: ①<?php echo “hello”;?> ②<script language="php">echo " ...

  9. Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置

    文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...

随机推荐

  1. ASP.NET Core 3.0 gRPC 双向流

    目录 ASP.NET Core 3.0 使用gRPC ASP.NET Core 3.0 gRPC 双向流 ASP.NET Core 3.0 gRPC 认证授权 一.前言 在前一文 <ASP.NE ...

  2. FPGA、GPU、CPU三者各自的优缺点是什么呢?

    CPU: 英文全称:Central Processing Unit. 中文全称:中央处理器. 厂商:英特尔Intel. 功能:是一台计算机的运算核心和控制核心. 缺点:运算能力(最弱),核处理数(最少 ...

  3. kafka删除弃用的groupid

    登录zookeeper客户端 cd zookeeper-3.4.10 sh zkCli.sh 查看groupid信息 [zk:localhost:2181(CONNECTED) 1] ls /cons ...

  4. 关于CDH集群spark的三种安装方式简述

    一.spark的命令行模式 1.第一种进入方式:执行 pyspark进入,执行exit()退出 注意报错信息:java.lang.IllegalArgumentException: Required ...

  5. 面试官:都说阻塞 I/O 模型将会使线程休眠,为什么 Java 线程状态却是 RUNNABLE?

    摘要: 原创出处 https://studyidea.cn 「公众号:程序通事 」欢迎关注和转载,保留摘要,谢谢! 使用 Java 阻塞 I/O 模型读取数据,将会导致线程阻塞,线程将会进入休眠,从而 ...

  6. 死磕 java线程系列之自己动手写一个线程池

    欢迎关注我的公众号"彤哥读源码",查看更多源码系列文章, 与彤哥一起畅游源码的海洋. (手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写 ...

  7. B/S 端 WebGL 3D 游戏机教程

    前言 摘要:2D 的俄罗斯方块已经被人玩烂了,突发奇想就做了个 3D 的游戏机,用来玩俄罗斯方块...实现的基本想法是先在 2D 上实现俄罗斯方块小游戏,然后使用 3D 建模功能创建一个 3D 街机模 ...

  8. Java基础学习笔记(六) - 数据结构和集合

    一.认识数据结构 1.数据结构有什么用? 合理的使用数据结构,可以更方便的查找存储数据. 2.常见的数据结构 数据存储常用结构有:栈.队列.数组.链表和红黑树. 栈:堆栈(stack),它是运算受限的 ...

  9. 执行Django数据迁移,报错 1091

    问题描述 今天在Pycharm 中的Terminal下,执行数据迁移操作时,第一步: Python manage.py makemigrations ,是没有任何问题,但就是在执行真正的数据迁移时,也 ...

  10. 原生js使用getComputedStyle方法获取CSS内部属性值

    在对网页进行调试的过程中,经常会用到js来获取元素的CSS样式, 1.下面的方法只能JS只能获取写在html标签中的写在style属性中的值(style=”…”),而无法获取定义在<style ...