.NetCore 入门篇:理解
(良心转载)原文地址:https://ken.io/note/dotnet-core-qucikstart-preface
一、.NET Core的诞生
聊 .NET Core,就不得不说他的爸爸 .NET。
当年Java刚刚兴起,如火如荼,微软也非常推崇Java,当时Windows平台的Java虚拟机就是微软按照JVM标准实现的,据说也是当时性能最好的Java虚拟机。但是微软也是有私心的,微软总想搞点Windows平台上的特性,有点想把Java绑定到Windows平台上的味道,另外Sun公司确实有点小心眼,于是Sun公司就跟微软闹掰了,然后微软就推出了 .NET,.NET从出生开始其实就借鉴了Java,然后又一步步在语言特性、窗体开发等方面实现了超越。Java在1.6版本以后发展缓慢,后面Java也在语言特性上借鉴了.NET。当然,这也是由于Sun公司不太争气。https://www.zhihu.com/question/22814456
.NET虽然一直发展的不错,也有WPF、Unity3D这样具有竞争力框架的出现。
但是.NET平台在一些较大的项目,尤其是不受互联网公司的喜爱。就是因为.NET不是开源的框架,也不是可跨平台的框架,那就会带来以下问题:
- 钱:选择.NET就要选择Visual Studio,Windows Server,license是不可忽视的成本
- 生态:没有来自于社区的贡献,那.NET没有诞生优秀框架的土壤
纵使有Mono这么强大的框架,可以让 .NET 跑在Linux上,但是这还不够。
毕竟Mono只能发挥.NET部分有限的能力
另外,马上容器时代都要来了,跟Windows的强依赖,如何上Docker?
当然这这是ken能看到的一部分原因吧,总之,形式所迫,拥抱变化,.NET Core应运而生。
二、.NET Core 与 .NET Framework的区别
.NET Core 就是.NET Framework的区别的开源且跨平台版本
.NET Core 虽然是.NET Framework的开源版本,但微软毕竟不能维护两个不同的分支
一个跑在Windows上,一个跑在Linux(Unix Like)系统上,所以微软抽象出来一个标准库
.NET Core 与 .NET Framework 都必须实现标准库的API ,就这样.NET Core、.NET Framework、XAMARIN成了三兄弟,分别为不同的平台服务。

现在.NET Core 2.0 Preview版本已经发布,.NET Core 2.0 基本等于 .NET Framework 4.6.1,从2016年6月 1.0发布到2017年6月 2.0发布,仅仅1年,达到这种程度,可见微软还是很给力的
三、学习 .NET Core需要做哪些准备?
- 基础的编程经验(.NET、Java、Python等皆可)
- Windows / Mac 作为开发环境
建议Windows,因为ken的开发环境是Windows,环境不同,操作会有差异
- IDE:Visual Studio 2017 / Visual Studio Code
- Linux 基本使用(推荐 CentOS、Ubuntu)
虚拟机安装教程:https://ken.io/serie/hyper-v-courses
CentOS快速上手:https://ken.io/serie/centos7-quickstart
Ubuntu快速上手:https://ken.io/serie/ubuntu-quickstart
如果实在不具备搭建Linux环境的条件,Windows也可以,但是不推荐
.NetCore 入门篇:理解的更多相关文章
- 如何在Visual Studio 2017中使用C# 7+语法 构建NetCore应用框架之实战篇(二):BitAdminCore框架定位及架构 构建NetCore应用框架之实战篇系列 构建NetCore应用框架之实战篇(一):什么是框架,如何设计一个框架 NetCore入门篇:(十二)在IIS中部署Net Core程序
如何在Visual Studio 2017中使用C# 7+语法 前言 之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法,然后闲来无事,搞着,搞着没搞出来,然后就写了这篇博文,不 ...
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
IT咨询顾问:一次吐血的项目救火 年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...
- NetCore入门篇:(八)Net Core项目使用Controller之三
一.简介 1.本节主要说明入参的几种接收方式 二.不限定模式 1.定义一个id入参与一个model入参. 2.get\post分别查看访问效果. api代码 public class OneContr ...
- NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json
一.简介 1.读取配置文件是开发过程中使用非常频繁的操作.属称”不能写死“ 二.NetCore读取配置文件 1.新建一个静态公共变量,属称单例. 2.在程序Startup启动时,将系统变量传递给单例. ...
- NetCore入门篇:(九)Net Core项目使用Session及用Redis做分布式
一.简介 1.因为Net Core默认是没有启动Session功能的,如果需要使用,需要通过代码开启. 2.本篇说明如果启用默认Session实现,即Session存到内存中. 3.本篇扩展说明如何用 ...
- NetCore入门篇:(六)Net Core项目使用Controller之一
一.简介 1.当前最流行的开发模式是前后端分离,Controller作为后端的核心输出,是开发人员使用最多的技术点. 2.个人所在的团队已经选择完全抛弃传统mvc模式,使用html + webapi模 ...
- NetCore入门篇:(五)Net Core项目使用静态文件
一.简介 1.Net Core默认无法访问静态文件,需要在Startup通过代码添加定义. 2.本文介绍两种静态文件目录实现方式. 二.启用默认目录 1.添加图片文件 2.测试访问结果(不能访问) 3 ...
- NetCore入门篇:(一)Net Core环境安装
一.下载Visual Studio 2017 1.下载地址:https://www.visualstudio.com/zh-hans/downloads/ 2.选择要下载的版本 二.安装Net Cor ...
- NetCore入门篇:(十二)在IIS中部署Net Core程序
一.简介 微软已经为net在iis中的部署提供了良好的支持,在IIS中部署NetCore是一件很容易的事. 二.在IIS中部署Net Core程序 1.微软官方文档有详细说明.进入 2.如果你已经熟悉 ...
随机推荐
- WPF 中如何变相让 ListBox 宽度(Width) 100%,高度(Height) 100%,从而达到 Filled 的效果
直接贴代码了: XAML: <Window x:Class="HelloWorld.MainWindow" xmlns="http://schemas.micros ...
- Redis set集合
Set操作.Set集合就是不允许重复的列表 (无序集合) sadd(name,values) # name对应的集合中添加元素 scard(name) # 获取name对应的集合中元素个数 sdiff ...
- 关于@Autowired后Spring无法注入的问题
1.对于新手来说,最明显的不过是在applicationContext.xml文件上没有加<context:component-scan base-package="com.xxx&q ...
- jdbc:mysql:/// jdbc连接数据url简写方式
正常情况下我们写jdbc连接本地mysql数据库的时候通常是这样写 jdbc:mysql:localhost:3306/数据库名 下面就是要提到的简单的方法 jdbc:mysql:///数据库名
- 2018-9-30-win10-UWP-剪贴板-Clipboard
原文:2018-9-30-win10-UWP-剪贴板-Clipboard title author date CreateTime categories win10 UWP 剪贴板 Clipboard ...
- Microsoft.Practices.Unity
// // Summary: // Register a type mapping with the container. // // Parameters: // container: // Con ...
- Python - 正则表达式2 - 第二十三天
Python3 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. ...
- C# .NET 使用 NPOI 读取 .xlsx 格式 Excel
string filePath = @"C:\Users\yangqinglin\Desktop\test.xlsx"; IWorkbook wk = null; string e ...
- Java生鲜电商平台-物流动态费率、免运费和固定运费设计与架构
Java生鲜电商平台-物流动态费率.免运费和固定运费设计与架构 说明:物流配送环节常见的有包邮,免运费,或者偏远地区动态费率,还存在一些特殊的情况,固定费率,那么如何进行物流的架构与设计呢? 运费之困 ...
- jvm默认的并行垃圾回收器和G1垃圾回收器性能对比
http://www.importnew.com/13827.html 参数如下: JAVA_OPTS="-server -Xms1024m -Xmx1024m -Xss256k -XX:M ...