前言

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相关学习资料

参考文章

一文带你了解.NET能做什么?的更多相关文章

  1. Istio是啥?一文带你彻底了解!

    原标题:Istio是啥?一文带你彻底了解! " 如果你比较关注新兴技术的话,那么很可能在不同的地方听说过 Istio,并且知道它和 Service Mesh 有着牵扯. 这篇文章可以作为了解 ...

  2. 一文带您了解5G的价值与应用

    一文带您了解5G的价值与应用 5G最有趣的一点是:大多数产品都是先有明确应用场景而后千呼万唤始出来.而5G则不同,即将到来的5G不仅再一次印证了科学技术是第一生产力还给不少用户带来了迷茫——我们为什么 ...

  3. 一文带你了解elasticsearch

    一文带你了解elasticsearch cxf2102100人评论160人阅读2019-07-02 21:31:36   elasticsearch es基本概念 es术语介绍 文档Document ...

  4. 【转帖】Istio是啥?一文带你彻底了解!

    Istio是啥?一文带你彻底了解! http://www.sohu.com/a/270131876_463994 原始位置来源: https://cizixs.com 如果你比较关注新兴技术的话,那么 ...

  5. 一文带你了解 C# DLR 的世界

    一文带你了解 C# DLR 的世界 在很久之前,我写了一片文章dynamic结合匿名类型 匿名对象传参,里面我以为DLR内部是用反射实现的.因为那时候是心中想当然的认为只有反射能够在运行时解析对象的成 ...

  6. 一文带你看清HTTP所有概念(转)

    一文带你看清HTTP所有概念   上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继 ...

  7. 【项目实践】一文带你搞定Spring Security + JWT

    以项目驱动学习,以实践检验真知 前言 关于认证和授权,R之前已经写了两篇文章: [项目实践]在用安全框架前,我想先让你手撸一个登陆认证 [项目实践]一文带你搞定页面权限.按钮权限以及数据权限 在这两篇 ...

  8. 一文带你看遍 JDK9~14 的重要新特性!

    Java9 发布于 2017 年 9 月 21 日 .作为 Java8 之后 3 年半才发布的新版本,Java 9 带 来了很多重大的变化其中最重要的改动是 Java 平台模块系统的引入,其他还有诸如 ...

  9. 一文带你读懂什么是vxlan网络

    一个执着于技术的公众号 一.背景 随着云计算.虚拟化相关技术的发展,传统网络无法满足大规模.灵活性要求高的云数据中心的要求,于是便有了overlay网络的概念.overlay网络中被广泛应用的就是vx ...

  10. 一文带你读懂zookeeper在大数据生态的应用

    一个执着于技术的公众号 一.简述 在一群动物掌管的世界中,动物没有人类聪明的思想,为了保持动物世界的生态平衡,这时,动物管理员-zookeeper诞生了. 打开Apache zookeeper的官网, ...

随机推荐

  1. jenkins安装卸载和下载

    环境 :docker容器 卸载 jenkins 1.rpm卸载rpm -e jenkins 2.检查是否卸载成功rpm -ql jenkins 3.彻底删除残留文件:find / -iname jen ...

  2. 使用yum安装unixODBC时报错怎么办

    使用 yum 安装 unixODBC 时报错怎么办 背景介绍 在使用 yum 安装 unixODBC 时,上报如下错误: [root@mc0-0002 odbc_connection]# yum in ...

  3. redis 简单整理——缓存设计[三十二]

    前言 简单整理一下缓存设计. 正文 缓存的好处: ·加速读写:因为缓存通常都是全内存的(例如Redis.Memcache),而 存储层通常读写性能不够强悍(例如MySQL),通过缓存的使用可以有效 地 ...

  4. 实验k8s ————— k8s 搭建[一]

    前言 以前学习k8s记录的.这里简单整理一下搭建,当时是我们学习环境的搭建,正式环境得专门的运维人员来,毕竟人家考虑的东西不一样. 正文 这里用kubeadm进行搭建,更加详细信息,在这里: http ...

  5. ionic 4 app 自动版本更新

    前言 介绍一下ionic4 app的自动更新.ionic 不多介绍了,后面一个后系列,背负着骂名的ionic其实还是可以的,如果刚入门ionic可能觉得很坑,但是呢,往后你就发现另外一件事,那就是其他 ...

  6. 面试官:来说说vue3是怎么处理内置的v-for、v-model等指令?

    前言 最近有粉丝找到我,说被面试官给问懵了. 粉丝:面试官上来就问"一个vue文件是如何渲染成浏览器上面的真实DOM?",当时还挺窃喜这题真简单.就简单说了一下先是编译成rende ...

  7. lin-view-ui Vue 2.0 组件库

    lin-view-ui 是一款基于 Vue.js 2.0 的前端 UI 组件库,主要集成了平时在开发中使用到的 UI 组件. 特性 基于 Vue 开发的 UI 组件 使用 npm + webpack ...

  8. python websocket 参数

    websocket中就有建立连接connect.发送消息send等函数可供使用,但是websocket.WebSocketApp将这些都封装好了,只用在实例化的时候传入自定义函数即可,更方便.因此这里 ...

  9. NIFI简介

    NIFI简介 首先是官网地址:Apache NiFi,不过会百度的估计都能搜到 因为后面的工作一定会用到,所以大致的听了一下讲解操作之类的 大概感觉就是NIFI是个web端的一种控制数据走向的工具?可 ...

  10. eBPF技术应用云原生网络实践系列之基于socket的service | 龙蜥技术

    ​简介:如何使用 socket eBPF进一步提升Service 网络的转发性能? ​ 背景介绍 Kubernetes 中的网络功能,主要包括 POD 网络,service 网络和网络策略组成.其中 ...