一文带你了解.NET能做什么?
前言
在DotNetGuide技术社区微信交流群经常看到有小伙伴问:.NET除了能写桌面应用和Web应用还能做什么?今天大姚将通过本篇文章来简单讲讲.NET能做哪些开发,对.NET感兴趣的小伙伴也可以自行领取文末附带的.NET相关学习资料。
.NET简单介绍
.NET是一个开源(MIT License)、免费、跨平台的开发平台框架,用于生成多种类型的应用程序。.NET 可以运行使用多种语言(C#、Visual Basic、F#)编写的程序,其中C#是最常用的语言。
.NET具有哪些设计亮点?
- 全栈开发支持:提供了丰富的运行时、库、语言和工具,促进了全栈开发,从而改善了开发人员的用户体验。
- 安全代码优先:将安全代码作为主要的计算模型,确保代码的安全性,同时允许通过手动优化实现不安全代码。
- 静态和动态代码支持:支持静态和动态代码,使得.NET适用于各种不同的场景和需求。
- 本机代码互操作和硬件内部函数优化:本机代码互操作和硬件内部函数成本低且保真度高(原始 API 和指令访问)。
- 跨平台移植性和优化:具备跨平台移植性,可以在不同的操作系统和芯片架构上移植,同时平台目标的专业化和优化也得到了支持。
- 通用编程模型:采用通用编程模型的专用实现,实现了跨编程领域的适应性,涵盖了云、客户端、游戏等多个领域。
.NET支持的应用程序类型
详细阅读.NET官方文档:https://dotnet.microsoft.com/zh-cn/
.NET框架支持广泛的应用程序类型,包括桌面应用程序、Web应用程序、移动应用程序、云服务、游戏开发、物联网应用程序以及大数据和人工智能应用程序。

Web 应用
ASP.NET Core 是适用于 .NET 的新式高性能 Web 开发框架,在 Windows, Linux, macOS, and Docker 上运行。

移动应用
.NET 多平台应用 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用。使用 .NET MAUI,可从单个共享代码库开发可在 Android、iOS、macOS 和 Windows 上运行的应用。

桌面应用程序
.NET MAUI:.NET Multi-Platform App UI (.NET MAUI)是一个框架,用于在单个代码库中使用 C# 和 XAML 构建新式、多平台、本机编译的 macOS 和 Windows 桌面应用以及 Android 和 iOS 移动应用。
Blazor 混合:Blazor 允许使用 C# 而非 JavaScript 生成交互式 Web UI。Blazor 应用由可重复使用的 Web UI 组件组成,使用 C#、HTML、CSS 实现。
WinUI 和 WinAppSDK:Windows UI 库(WinUI)是用于 Windows 桌面应用的 UI 框架,其中包括对 C# 和 .NET 的支持。WinUI 可作为Windows 应用 SDK的一部分使用。Windows 应用 SDK提供了一组统一的 API 和工具,可在一组广泛的目标 Windows OS 版本上以一致的方式使用。

微服务应用

云服务
.NET Aspire:构建可观测、生产就绪、分布式应用程序的云原生框架。


机器学习
- .NET SDK 与 Azure OpenAI 服务配合使用,让应用程序使用自然语言与用户进行对话。
- 借助.NET,可以开发自定义机器学习模型并将其集成到.NET应用程序中,而无需任何前期机器学习经验。
- 开源了面向 .NET 开发人员的 ML.NET (免费的开放源代码跨平台机器学习框架)。
ML.NET:https://github.com/dotnet/machinelearning。
游戏开发
Unity 是一款流行的跨平台游戏引擎,它使用 C# 作为主要的编程语言,并且可以与 .NET 技术集成,使开发者能够构建各种类型的游戏,包括 2D 和 3D 游戏。

物联网(IoT)
使用在 Raspberry Pi、HummingBoard、BeagleBoard、Spring A64 等上运行的 C# 和 .NET 生成 IoT 应用。
利用开源库和框架与专用硬件(如传感器、模拟到数字转换器、LCD 设备)交互。

.NET相关学习资料
- C#/.NET该如何自学入门?
- C#/.NET/.NET Core推荐学习书籍
- 10款值得推荐的Blazor UI组件库
- Java开发者快速上手.NET指南
- 16个值得推荐的.NET ORM框架
- C#/.NET/.NET Core面试宝典(基础版)
- C#/.NET/.NET Core充电站(让你学习不迷路)
- .NET开源免费的跨平台框架 - MAUI(附学习资料)
- C#/.NET/.NET Core优秀项目框架推荐
- C#/.NET/.NET Core全面的学习、工作、面试指南知识库
参考文章
一文带你了解.NET能做什么?的更多相关文章
- Istio是啥?一文带你彻底了解!
原标题:Istio是啥?一文带你彻底了解! " 如果你比较关注新兴技术的话,那么很可能在不同的地方听说过 Istio,并且知道它和 Service Mesh 有着牵扯. 这篇文章可以作为了解 ...
- 一文带您了解5G的价值与应用
一文带您了解5G的价值与应用 5G最有趣的一点是:大多数产品都是先有明确应用场景而后千呼万唤始出来.而5G则不同,即将到来的5G不仅再一次印证了科学技术是第一生产力还给不少用户带来了迷茫——我们为什么 ...
- 一文带你了解elasticsearch
一文带你了解elasticsearch cxf2102100人评论160人阅读2019-07-02 21:31:36 elasticsearch es基本概念 es术语介绍 文档Document ...
- 【转帖】Istio是啥?一文带你彻底了解!
Istio是啥?一文带你彻底了解! http://www.sohu.com/a/270131876_463994 原始位置来源: https://cizixs.com 如果你比较关注新兴技术的话,那么 ...
- 一文带你了解 C# DLR 的世界
一文带你了解 C# DLR 的世界 在很久之前,我写了一片文章dynamic结合匿名类型 匿名对象传参,里面我以为DLR内部是用反射实现的.因为那时候是心中想当然的认为只有反射能够在运行时解析对象的成 ...
- 一文带你看清HTTP所有概念(转)
一文带你看清HTTP所有概念 上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继 ...
- 【项目实践】一文带你搞定Spring Security + JWT
以项目驱动学习,以实践检验真知 前言 关于认证和授权,R之前已经写了两篇文章: [项目实践]在用安全框架前,我想先让你手撸一个登陆认证 [项目实践]一文带你搞定页面权限.按钮权限以及数据权限 在这两篇 ...
- 一文带你看遍 JDK9~14 的重要新特性!
Java9 发布于 2017 年 9 月 21 日 .作为 Java8 之后 3 年半才发布的新版本,Java 9 带 来了很多重大的变化其中最重要的改动是 Java 平台模块系统的引入,其他还有诸如 ...
- 一文带你读懂什么是vxlan网络
一个执着于技术的公众号 一.背景 随着云计算.虚拟化相关技术的发展,传统网络无法满足大规模.灵活性要求高的云数据中心的要求,于是便有了overlay网络的概念.overlay网络中被广泛应用的就是vx ...
- 一文带你读懂zookeeper在大数据生态的应用
一个执着于技术的公众号 一.简述 在一群动物掌管的世界中,动物没有人类聪明的思想,为了保持动物世界的生态平衡,这时,动物管理员-zookeeper诞生了. 打开Apache zookeeper的官网, ...
随机推荐
- 全新适配鸿蒙生态,Cocos引擎助力3D应用开发
原文链接:https://mp.weixin.qq.com/s/rCACesJ4QxRuU2NRjIvbDQ,点击链接查看更多技术内容: 一.适配HarmonyOS背景 HarmonyOS 3.1版本 ...
- 直播预告丨Hello HarmonyOS进阶课程第三课——游戏开发实践
为了帮助初识HarmonyOS的开发者快速入门,我们曾推出Hello HarmonyOS系列一共5期课程,从最基础的配置IDE和创建Hello World开始,详细介绍HarmonyOS基础.开发环境 ...
- Android 开发入门(4)
0x06 中级控件 (1)图形绘制 a. 图形 Drawable Drawable 类型包括图片.色块.画板.背景 drawable 目录一般保存描述性 XML 文件,具有具体分辨率的 drawabl ...
- leetcode - 子数组最大平均值
给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数. 示例: 输入:[1,12,-5,-6,50,3], k = 4 输出:12.75 解释:最大平均数 (12-5-6+5 ...
- 利用navicat 完成两台服务器之间的数据库迁移,安全可靠
首先,准备工作先做好 1. 工具,navicat,我这里用的是navicat12+ 2. 建立两台服务器的链接,即新建链接,mysql,同时,需要在迁移目标服务器上面实现建立好对应的数据库,即如果有1 ...
- 关于伺服刹车/急停/前后设备信号对接/PLC输入输出模块的公共端介绍
一.伺服刹车 关键词:急停,急停中间继电器.刹车中间继电器,刹车使能 正文: 通常情况不用硬件为主导而用程序来主导控制,多场景应用方便修改且安全可靠. 伺服刹车硬件,一般是24v电源给进去,就会释放刹 ...
- verilog中端口定义方式以及如何使用变量
一.module端口定义方式 目前有两种方式能够对module端口进行定义, 第一种是我目前使用比较多的,把I/O说明写在端口声明语句里,方式A: 1 module block( 2 input a, ...
- 【数学】向量点乘、叉乘的理论、应用及代码实现(C++)
前言 我总结了一下向量点乘,叉乘的概念,以及他们的应用及相关C++代码的实现.blog 这类问题也是技术面试经常碰到的,一次研究透了会有收获. 1 向量 向量具有大小和方向. 共线向量:两个平行的向量 ...
- 力扣594(java&python)-最长和谐子序列(简单)
题目: 和谐数组是指一个数组里元素的最大值和最小值之间的差别 正好是 1 . 现在,给你一个整数数组 nums ,请你在所有可能的子序列中找到最长的和谐子序列的长度. 数组的子序列是一个由数组派生出来 ...
- EasyNLP带你实现中英文机器阅读理解
简介: 本⽂将提供对MacBERT模型的技术解读,以及如何在EasyNLP框架中使⽤MacBERT及其他预训练语言模型,进行中英文机器阅读理解任务的训练与预测. 作者:施晨.黄俊 导读 机器阅读理解是 ...