微软的.NET 8与Aspire云就绪工具的Mac版本已发布

【2023-11-29 19:40:23爱思瑞网快讯】

微软的.NET 8与Aspire云就绪工具的Mac版本已发布

.NET框架允许在Windows和Mac上进行跨平台开发,微软于11月发布了版本8。以下是对开发人员的意义。

在20世纪90年代后期,微软开始着手开发一个新的框架、语言和运行时,用于桌面和Web开发,名为.NET(读作“点网”)。新的语言包括C#(C的衍生语言)、F#,以及一种名为Visual Basic.NET(或简称为“VB.NET”)的微软新版本的Visual Basic。

微软在2000年的开发者大会上宣布了C#的正式发布。

之后不久,微软开始通过ISO和Ecma International进行CLI(Common Language Infrastructure)的开发和标准化工作。CLI的背后理念是为所有微软开发的语言提供一个通用基础设施。

CLI旨在提供一致的运行时行为,无论使用哪种语言或技术构建给定的软件。

微软的Common Language Runtime(CLR)部分基于CLI,微软的编译器也是如此。

C#相较于其C和C++的前身具有重要优势,即C#源文件是自包含的,不再需要在每个源代码文件的顶部包含C/C++的头文件(.h)。C#提供了其他简化设计,旨在减少开发时间和代码大小/复杂性。

2002年,微软还宣布了ASP.NET框架,它是一种用于构建Web服务器和云端开发的框架,取代了微软最初的Web服务器框架,简称为Active Server Pages(ASP)。

.NET Core

2014年,微软推出了一种新版本的.NET,称为.NET Core,后来在2020年推出了.NET 5。随后推出了更多版本,于2023年11月14日,微软宣布了.NET 8的发布,目前为最新版本。

.NET Core设计用于在Windows、Mac和Linux系统上进行跨平台和Web开发。.NET现在包括可安装的运行时、SDK、.NET Core库,以及在Windows上的Visual Studio集成开发环境(IDE)。

先前有一个面向Mac的Visual Studio版本,但微软取消了该版本,因为大多数苹果平台开发都是使用苹果自己的IDE Xcode进行的。

.NET Core版本9预计于2024年末发布。

.NET MAUI

.NET MAUI(Multi-platform App UI,多平台应用界面)于2021年随.NET 6一起推出,可用于使用C#构建iOS和Android移动应用,以及桌面应用。

MAUI使用微软的开源XAML(可扩展应用程序标记语言),它源自开源的XML网页标准。XAML基于微软的开放规范承诺,即微软不会就第三方使用MOSP技术进行诉讼。

需注意的是,XAML还在其他微软框架和技术中使用:

  1. WPF(Windows Presentation Foundation,Windows演示基础)
  2. WF(Windows Forms,Windows窗体)
  3. WinUI
  4. UWP(Universal Windows Platform,通用Windows平台)

UWP是一种为Windows 10、10 Mobile、Xbox One和Series S/X以及HoloLens应用提供统一技术的解决方案。

XAML元素和属性映射到CLR属性和事件。

XAML还可以编译成微软的BAML(Binary Application Markup Language)文件,扩展名为.BAML,这允许以上技术的输出插入到.NET框架程序集中,然后由.NET运行时进行加载和提取。

BAML通过在XAML中有效地插入提示或令牌,并使用静态提前编译(AOT)对代码进行预运行时分析,实现更快的加载和执行。

2003年早期的Visual Studio .NET学术版本。

.NET 8的新功能

.NET 8引入了多项新功能,其中最重要的一个是微软的新云原生框架和工具,名为Aspire,目前仍处于预览阶段。Aspire被称为“新的云堆栈”,旨在简化多云开发,包括可观察性和弹性等功能。

微软的主.NET GitHub页面上还有Aspire的存储库。

Aspire还使用微软的客户端Web应用技术Blazor,支持使用C#和HTML开发应用。Blazor现在还支持流行的WebAssembly和混合设计。

通过提供可在用户的Web浏览器中下载和运行的单页Web应用,Blazor和WebAssembly可以加快网站的速度,从而减少由于网络延迟而导致的页面和元素加载时间。

Aspire还使用Redis Web缓存系统,以及用于各种数据库的Web组件、RabbitMQ消息系统、微软自己的Azure Web技术、Open Telemetry和PostgreSQL。

遥测是与可观察性相关的软件特性,它允许自动导出日志、指标和性能行为。

.NET 8还支持NuGet包、改进的JSON序列化、内存垃圾收集、在Linux上的.NET、WPF和诊断改进等等。

总体而言,Microsft的“.NET新功能”页面上列出了18个新功能。

Aspire的一个有趣之处在于,微软声称可以将Aspire支持添加到现有的.NET解决方案(项目),前提是需要先完全升级到.NET 8。

Aspire的正式发布计划于2024年春季。

微软还发布了适用于Windows的Visual Studio 17.8,与.NET 8发布同时进行。接下来几周将发布一个名为Windows AI Studio的适用于Visual Studio的新的本地AI工具,其基于Azure AI Studio。

获取和安装.NET

在Mac上,您可以通过从微软的网站、.NET页面下载和安装.NET组件,或下载一个容器镜像并使用其安装完整环境。

微软还有一个完整的.NET GitHub页面,上面有数百个.git存储库,用于.NET运行时、.NET Core、asp.net Core、.NET SDK、C#和Visual Basic的.NET编译器(代号为“Roslyn”)、F#编译器、用于构建桌面应用的Windows Forms,以及文档。

msbuild存储库包含微软构建引擎,该引擎由编译器、Visual Studio和命令行界面用于项目构建。

您也可以使用macOS上的Homebrew软件包管理器,通过Homebrew.NET配方安装.NET:

请注意,`brew install dotnet`是.NET 8的新公式,它与两个较旧的.NET Homebrew公式冲突:

  1. `brew install –cask dotnet`(运行时)
  2. `brew install –cask dotnet-sdk`(SDK)

根据Homebrew公式文档页面的说明,这两个较旧的cask公式不支持Apple Silicon Macs,但新的.NET 8公式支持。

对于Windows的.NET 8安装,您还需要下载.NET桌面运行时,并将其安装到Windows计算机上。

所有受支持平台都有单独的下载页面。

总的来说,.NET 8看起来很有前途,如果微软按照Aspire项目继续推进,它将简化多云开发。

此外,请参阅在线的dotnetconf.net虚拟活动,了解一些.NET教程。该网站还有一个YouTube频道,其中包含几个入门级.NET视频。

免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,可联系本站进行二次审核删除:fireflyrqh@163.com。
Like (0)
Previous 2023年11月29日 下午6:53
Next 2023年11月29日 下午8:19

相关推荐