.NET-1.理论知识(历史介绍和了解)


前言

偏爱,至死不渝

.net学习推荐:官方dotNET China(Gitee)
项目推荐:web api系列教程ABP杨中科YiShaAdmindoc |HaotianCloudFineAdminJuCheap中台xm
其他:mvcbootstrap table系列使用


常用的Dotnet命令行&Vs的快捷键

//查看版本、控制台项目、查看已安装的sdk、创建一个Web API 项目、构建并运行、
dotnet --version 、dotnet new console、dotnet --list-sdks、dotnet new webapi -f net6.0、dotnet run  

// NuGet 指定版本 、卸载、更新、、
Install-Package XXX。-Version、Uninstall-Package XXX、Update-Package XXX


//注释,取消注释,展开,合并,快速隐藏或显示当前代码段
CTRL+K+C、CTRL+K+U、CTRL+M+O、CTRL+M+L、Ctrl+M+M
//删除该行,在光标所在行的上面插入一行,在光标所在行的下面插入一行,查找.替换,智能提示
CTRL+L、CTRL+Enter、CTRL+Shift+Enter、CTRL+F、Ctrl+J
//快速切换窗口、书签、全屏显示/退出全屏显示、上移行、下移行 
Ctrl+Tab、c+K+K、SHIFT + ALT + ENTER、Alt+向上键 、Alt+向下键

一、 .NET是开发平台

1、.NET是 什么?

.NET 是NET Framework、.NET Core、Xamarin/Mono的统称。
1. .NET Framework:近20年历史,.NET简称的最早拥有者,用于开发Windows程序。
2. Xamarin/Mono主要做移动开发:Xamarin、Unity。Mono也能做Web等跨平台开发,但主要专注移动端。
3. .NET Core:免费、跨平台、开源 。跨平台:程序可以运行在Windows、Linux、Mac等操作系统下。

2、.NET Framework缺点

1、系统级别的安装,互相影响、2、无法独立部署、3、ASP.NET 和IIS深度耦合、4、ASP.NET资源消耗大、5、非云原生
.NET Framework历史包袱:1、带着手铐脚镣长大的ASP.NET MVC、2、ASP.NET底层不支持很好的单元测试

3、.NET Core的优点

1)支持独立部署,不互相影响;
2)彻底模块化;
3)没有历史包袱,运行效率高
4)不依赖于IIS
5)跨平台
6)符合现代开发理念:依赖注入、单元测试等

4、.NET Standard类库

1.NET Standard只是规范,一个.NET Standard类库可以被支持其版本的.NET Framework、.NET Core,Xamarin等引用。而.NET Core库、.NET Framework类库则不可以。
2.如果编写一个公用的类库,尽量选择.NET Standard,并且尽量用低版本。

5、.NET 开发工具

1) .NET CLI: 命令行
2) Visual Studio: Windows-Only (推荐)
3) Visual Studio for Mac
4) Jetbrains Rider:(挺好用的,不骗人)
5) VS Code (Visual Studio Code): 跨平台

6、其他

1.从.NET 5开始,微软开始淡化其他叫法,统一为.NET,后续默认.NET就是指的.NET Core。
2.文档中英文切换。也许可以手动改 zh-cn/en-us
3.自学就要养成把相关文档“翻一翻”的意识。
包管理:
Linux:apt、yum
Javascript:npm
Java:Maven、Gradle
Python:pip
.net:NuGet

二、其他

1. 依赖注入

  1. 生活中的“控制反转”:自己发电和用电网的电。
    依赖注入(Dependency Injection,DI)是控制反转(Inversion of Control,IOC)思想的实现方式。
  2. 依赖注入简化模块的组装过程,降低模块之间的耦合度
  3. .NET的DI默认是构造函数注入。

控制反转两种实现方式:

  1. 服务定位器(ServiceLocator);
  2. 依赖注入(Dependency Injection,DI)

DI几个概念
服务(service):对象;注册服务;
服务容器:负责管理注册的服务;
查询服务:创建对象及关联对象;
对象生命周期:Transient(瞬态); Scoped(范围); Singleton(单例);

2. .Net 框架的组件

  • 公共语言运行库(Common Language Runtime - CLR)
  • .Net 框架类库(.Net Framework Class Library)
  • 公共语言规范(Common Language Specification)
  • 通用类型系统(Common Type System)
  • 元数据(Metadata)和组件(Assemblies)
  • Windows 窗体(Windows Forms)
  • ASP.Net 和 ASP.Net AJAX
  • ADO.Net
  • Windows 工作流基础(Windows Workflow Foundation - WF)
  • Windows 显示基础(Windows Presentation Foundation)
  • Windows 通信基础(Windows Communication Foundation - WCF)
  • LINQ

图片概述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

总结

有待更新

posted @ 2022-04-05 18:35  cactus9  阅读(20)  评论(0编辑  收藏  举报