1.1 什么是.NET?

.NET 8.0 SDK下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0

.NET 是一个免费的跨平台开源开发人员平台,用于生成许多不同类型的应用。使用 .NET,可以使用多种语言(C#、F#、VB)、编辑器(VS、VSC、Rider)和库(以Microsoft主导的社区提供超过100,000+包来)来构建 Web、移动和桌面、机器学习、游戏开发、IOT 等众多应用。

本系列全程采用.NET 8作为主干,Web项目为案例,带领大家从入门到精通

1.2 为什么选.NET?

1.2.1 高效生产力

.NET 提供泛型、LINQ 和异步编程等高级语言功能,并为开发人员提供广泛的类库和多语言支持。

.NET提供一致性Standard标准,这是一组标准的基类库和API,这些库和API对所有.NET应用程序都是通用的。

.NET还提供了一系列基于基础库构建的应用程序模板,帮助你更快地生成应用,例如Web、移动和桌面、微服务、云服务等等。

.NET 是面向重视生产力、性能、安全性和可靠性的开发人员的终极平台。

1.2.2 跨应用跨语言跨平台

借助.NET,可以面向在任何平台上运行的任何应用程序类型。开发者可以在熟悉的环境中在其之间重复使用技能和代码。这意味着开发人员能够以更少的成本,更快地构建应用。从在 iOS、Android 和 Windows 上运行的移动应用程序到在 Windows Server 和 Linux 上运行的企业服务器应用程序,或在云中运行的大规模微服务,.NET 提供了一个解决方案。

这一切都归功于.NET拥有一个非常罕见的完整编程平台:CLR,CLR不是本系列主题,如果需要的同学多可以单开一个系列带大家了解CLR。

1.2.3 强大的生态

.NET位于.NET Foundation基金会下,.NET基金会为独立组织,旨在促进围绕 .NET 生态系统的开放型开发和协作。目前已有100,000+ OSS贡献,3,700+ OSS公司参与者。

.NET平台拥有Microsoft的官方支持,并受到数以千计的公司和数百万开发人员的信任。除了社区和 Microsoft之外,技术指导组成员 Google、JetBrains、Red Hat、Samsung 和 Unity 正在指导 .NET 平台的未来。

1.2.4 令人惊叹的迭代速度

.NET Core的是.NET的前身,从2016年6月27日发布.NET Core 1.0.0到2018年5月30日发布的2.1.0,.NET Core开始被市场接受,市场表现十分“热闹”。有C#体系下“技术狂热分子”的追捧,也有“守旧派”的抵触,还有不少其它平台的嘲讽。然而这些都没有影响到微软此次开源的决心,没错,.NET Core最大的特点之一就是开源,时至今日都有不少人对C#这门语言的印象停留在Framework,闭源且臃肿。

至.NET Core2.1起,微软投入更多资源来迭代它,以一年一个STS版本的速度进行升级,直到2020年发布.NET 5.0,.NET Core 3.1和Framework 4.8正式被合并为一个统一的版本,至此,微软已经将重点全面转移到了.NET平台。

版本 原始发布日期 最新补丁版本 补丁发布日期 终止支持
.NET 8 预计2023年11月 -- -- 预计2026年11月
.NET 7 2022年11月8日 7.0.13 2023年10月24日 2024年5月14日
.NET 6 2021年11月8日 6.0.24 2023年10月24日 2024年11月12日
.NET 5 2020年11月10日 5.0.17 2022年5月10日 2022年5月10日
.NET Core 3.1 2019年12月3日 3.1.32 2022年12月13日 2022年12月13日
.NET Core 3.0 2019年9月23日 3.0.3 2020年2月18日 2020年3月3日
.NET Core 2.2 2018年12月4日 2.2.8 2019年11月19日 2019年12月23日
.NET Core 2.1 2018年5月30日 2.1.30 2021年8月19日 2021年8月21日
.NET Core 2.0 2017年8月14日 2.0.9 2018年7月10日 2018年10月1日
.NET Core 1.1 2016年11月16日 1.1.13 2019年5月14日 2019年6月27日
.NET Core 1.0 2016年6月27日 1.0.16 2019年5月14日 2019年6月27日

1.3 怎么学NET?

如上述,.NET平台涵盖太多方向,没有人能够有精力毫无方向的去学习。在接下来的章节中我将聚焦于.NET Web服务端编程领域。

时至今日,前后端分离已经是市场上Web领域的主流架构,而我们聚焦的是后端。

1.3.1 前置内容

在学习.NET Core之前,我希望你能够:

  • 掌握基本C#语法,异步编程

  • 了解面向对象、面向切面编程思想,常见的设计模式

  • 掌握一种ORM,了解常用中间件、数据库

  • 对计算机网络、操作系统、常见数据结构算法有所了解

1.3.2 学习途径

你有且不限于通过经典书籍、视频、博客、官方文档、源码等渠道获取你想要的内容。但互联网上的噪音非常大,希望每一位读者有选择性的择取内容。

本系列将以.NET Web初学者的视角,由浅到深的攻克每一个关键技术点。对于有一定经验的同学,请自行区分所需内容。欢迎同学们反馈。

1.3.3 作者寄言

怎么学?这也许是很多同学的心声,我与你一样,在初遇一个陌生技术栈时,会紧张不安。希望有人提供一个完美的学习路线,会在网络上不停的搜索同类型的技术,对比一下谁强谁弱。。事实上我们花了太多的时间去确认一个本就无法确认的东西,以至于别人都能够写出炫酷的作品时,我们还在门口观望。我想,学习最重要的不是怎么学,而是本身,学习的初期沉没成本是很低的,我希望初学者不要有那么多为什么?而是多一些是不是?,因为后者是夹杂你个人思考与实践的体现。

什么时候学?种一颗树最好的时间是十年前,其次是现在!

学习没有技巧吗?当然有啊,当前提是你有足够的储备!如果你连基础语法都没有掌握住,来这里问Web怎么学,是不是有一些颠倒因果了呢?对于学习这件事情,作者本身其实也不在行,只有一些老套路--重复且高频、归纳与演绎、验证并预测

最后,做内容创作真的是一件不易的事情,如果你认为这些内容对你有益,能够帮助到你,请帮作者点赞和转发吧,帮助到更多的人吧~

第1章 .NET起步的更多相关文章

  1. 第一章Python起步

    1.1搭建编程环境 编程环境的正确搭建很重要,一定要参考先搭配好环境变量,不然用着会很麻烦,在这里推荐使用工具pycharm,亿图图示画流程图,一定要正确安装,搭配好环境变量,后面要添加很多模块,前期 ...

  2. 第一章 Bootstrasp起步

    模板如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf ...

  3. 第一章 spring起步

    点击 网址 http://start.spring.io/ 就可以获得spring-boot的项目结构. 如下: 将项目解压到自己的项目中,然后找到mian函数所在启动类.运行.出现: 表示已经运行了 ...

  4. 第一章:起步(python环境搭建)

    Python 环境搭建 学习python的第一步,就是要学习python开发环境的配置,在配置好python开发环境后,你需要再安装一款比较趁手的编辑器,事实上,python解释器本身就可以进行一些编 ...

  5. #Python学习笔记:1-3章 (基于《python编程,从入门到实践)

    第1-3章 这个文档是记录我学习python时一些学习笔记以及一些想法也可以称作复习笔记 第一章:起步这一章主要是从第一个"hello world"程序到python环境的搭建与配 ...

  6. “全能”选手—Django 1.10文档中文版Part1

    本文是博主翻译的Django1.10版本官方文档的第一部分,如时间充裕,争取一直翻译下去,经验不足,或有错漏,敬请指正. 另外对于公开文档进行翻译的版权问题不是很清楚,如有侵权请联系我! 另外,要转载 ...

  7. 深入理解HTML5:语义、标准与样式(勇猛精进早登大师殿堂创最优品质交互)

    深入理解HTML5:语义.标准与样式(勇猛精进早登大师殿堂创最优品质交互) [美]布拉德福(Bradford,A.) [美]海涅(Haine,P.)著 高京译 ISBN 978-7-121-20552 ...

  8. 【Python千问 1】Python核心编程(第二版)导读

    第一章 欢迎来到Python世界 什么是Python Python的起源 Python的特点 下载Python 安装Python 运行Python Python文档 比较Python(与其它语言的比较 ...

  9. 深入理解HTML5:语义、标准与样式

    <深入理解HTML5:语义.标准与样式> 基本信息 作者: (美)布拉德福(Bradford,A.) 海涅(Haine,P.) 译者: 高京 出版社:电子工业出版社 ISBN:978712 ...

  10. 深入浅出话XAML-学习笔记

    第一章 XAML是什么? 1.1XAML之前 *设计师的设计更不上程序逻辑的变化 *程序员未能完全实现设计师提供的效果图 *效果图与程序功能不能完全匹配 *从效果图到软件UI的转化耗费很多时间 1.2 ...

随机推荐

  1. TrustZone——(一)

    本文内容主要来源于网络,综合了网上的多篇文章,也加入了一些自己的理解,重新组织了文章结构使其便于理解. 主要参考的文章包括: 一篇了解TrustZone TrustZone领域先行者 TrustZon ...

  2. curl 调用url时带有&符号被截断

    转载请注明出处: 用curl命令在服务器上调试接口时,一直调试不通,执行如下: 在用curl 执行之后,返回了一个 作业id [ 1 ] 23926 ; 并打印出了 调用执行的url,发现 真正执行的 ...

  3. .NET for Apache Spark 入门演练

    .NET for Apache Spark 入门演练 微软官方文档: .NET for Apache Spark 入门 | Microsoft Learn 注意:由于本次在windows平台下进行演练 ...

  4. python连接 Basler pylon相机遇到的问题

    今天使用下图程序去连接相机 以下是摄像头IP参数 电脑IP参数 在确认电脑能够ping通相机的情况下 以及检查专用软件能否访问之后 依然遇到了以下错误 经过了多番调试之后发现即使能够ping通,子网掩 ...

  5. 2021-3-9 xml序列化和反序列化

    class XmlHelp { #region 调用 /// <summary> /// xml添加 /// </summary> /// <param name=&qu ...

  6. log4j2---基于vulhub的log4j2漏洞复现---反弹shell

    基于vulhub的log4j2漏洞复现---反弹shell 1.方法一 环境准备: 和我上一篇fastjson1.2.24漏洞复现是一样的环境,方法也差别不大 声明:遵纪守法,仅作学习记录用处,部分描 ...

  7. python:时间模块dateutil

    安装 pip install python-dateutil dateutil模块主要有两个函数,parser和rrule. 其中parser是根据字符串解析成datetime,而rrule则是根据定 ...

  8. 一条命令突破Windows限制,暂定更新时间至3000天

    在系统界面上最长也就只能延期 35 天,而且 35 天以后一定要更新了才能继续暂停.不过,我找到了一段能延长暂停时间的代码 reg add "HKEY_LOCAL_MACHINE\SOFTW ...

  9. 四 APPIUM GUI讲解(Windows版)(转)

    Windows版本的APPIUM GUI有以下图标或者按钮: ·Android Settings  - Android设置按钮,所有和安卓设置的参数都在这个里面 ·General Settings – ...

  10. Java不能操作内存?Unsafe了解一下

    前言 C++可以动态的分类内存(但是得主动释放内存,避免内存泄漏),而java并不能这样,java的内存分配和垃圾回收统一由JVM管理,是不是java就不能操作内存呢?当然有其他办法可以操作内存,接下 ...