码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • .NET 8 预览版 1:NativeAOT 升级和新的Blazor United


    Download .NET 8 Preview 1

    .NET团队 今天在官方博客上 发布了.NET 8的第一个预览版,.NET 8 是一个长期支持 (LTS) 版本[1],.NET 的版本包括产品、库、运行时和工具,是 Microsoft 内部和外部多个团队之间的协作。.NET 8 预览版和候选发布版本将每月交付一次,最终交付时间是今年的.NET 大会 。

    .NET 8 预览版 1 中的新增功能方面主要有两个:NativeAOT编译的完善,在Web开发方面,新的Blazor United项目融合了混合匹配服务器端和客户端渲染功能。

    .NET团队首席项目经理的Jeremy Likness在 “宣布.NET 8 Preview 1 [2] 帖子中说 ,NativeAOT是在.NET 7中引入的,但开发团队将在11月发布的.NET 8 中投入更多工作,例如减小应用大小,Linux 版本现在缩小了 50%,使用Native AOT发布应用程序会创建一个完全独立的应用程序版本,不需要单独的运行时,因为所有内容都包含在单个文件中,从预览版1开始,这个文件更小。事实上,Linux 版本现在缩小了 50%。

    在知乎上有大量的讨论 NativeAOT的缺席阻碍了.NET的采用,微软将NativeAOT的优势列为:

    • 减少内存占用:与 JIT 编译的代码相比,AOT 编译的代码需要更少的内存,因为 JIT 编译器生成 AOT 编译应用程序中不需要的中间代码。这对于内存有限的设备(如嵌入式系统和移动设备)尤其有益。
    • 缩短了启动时间:与 JIT 编译代码相比,AOT 编译的代码启动速度更快,因为它消除了 JIT 编译器生成中间代码并针对特定硬件和软件环境优化代码的需要。这对于必须快速启动的应用程序特别有用,例如系统服务、无服务器“函数”和后台任务。
    • 延长电池寿命:与 JIT 编译代码相比,AOT 编译代码消耗的功率更少,因为它消除了 JIT 编译器生成中间代码并针对特定硬件和软件环境优化代码的需要。这对于依赖电池的设备(如移动设备)尤其有益。

    与此同时,ASP.NET Core首席项目经理 Daniel Roth 写了文章ASP.NET .NET 8 预览版 1 中的核心更新[3],介绍了他的团队正在做什么,从史蒂夫·桑德森(Steve Sanderson)的原型项目开始,他称之为“Blazor United”:

    Daniel Roth说到  “在.NET 8中,我们正在努力将服务器端和客户端渲染的优势结合到基于Blazor的单个全栈编程模型中,我们目前称这种努力为'开拓者联队'。Blazor United 将允许你使用单个基于 Blazor 的体系结构进行服务器端呈现,并与 Blazor Server 或 WebAssembly 进行完整的客户端交互。这一切都在一个项目中,能够在不同的渲染模式之间轻松切换,甚至在同一页面中混合它们。Blazor United还将启用新的渲染功能,例如流式渲染以及导航和表单帖子的逐步增强。

    他还介绍了面向 Web 开发人员的本机 AOT:“.NET 7 引入了对将 .NET 控制台项目发布为NativeAOT[4] 的支持,生成一个独立的、特定于平台的可执行文件,没有任何运行时 JIT。本机 AOT 应用的启动速度非常快,并且使用更少的内存。可以将应用程序部署到未安装任何 .NET 运行时的计算机或容器。在 .NET 8 中,我们将把对NativeAOT的支持扩展到 ASP.NET Core,从使用最小 API 构建的以云为中心的 API 应用开始,这些应用可以满足有关已发布文件大小、启动时间、工作集和吞吐量性能的预期。

    除了对本机AOT的讨论外,Likness还强调了其他关于容器映像,JSON改进,Linux支持等常规.NET 8工作。新的“.NET 8 中的新增功能”[5]文档中详细介绍了所有内容。 至于 ASP.NET Core改进的细节,有兴趣的读者可以查阅 .NET 8 的 ASP.NET Core路线图[6],其中以 Blazor 的 24 项为主,以 Blazor United 为首,如下图所示:

    image

    微软同时还发布了配套的开发工具支持:包括Visual Studio 2022 v17.5,Visual Studio for Mac 17.5和EFCore 8 Preview 1。

    相关链接:

    • [1]长期支持 (LTS) 版本: https://dotnet.microsoft.com/platform/support/policy/dotnet-core
    • [2]宣布.NET 8 Preview 1: https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-preview-1/
    • [3]ASP.NET .NET 8 预览版 1 中的核心更新: https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-preview-1/
    • [4].NET 控制台项目发布为NativeAOT: https://learn.microsoft.com/dotnet/core/deploying/native-aot/
    • [5].NET 8 中的新增功能: https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-8
    • [6].NET 8 的 ASP.NET Core路线图: https://github.com/dotnet/aspnetcore/issues/44984
  • 相关阅读:
    基于微信小程序建桥学院点餐
    Dialog and WindowManager$BadTokenException
    【Pytorch Lighting】第 4 章:Lightning Flash 中的即食模型
    基于通信加密的文字文件传输系统(Python)
    i2c协议的特点是什么,老司机带你深入了解
    git 笔记 常用命令reset merge rebase
    cgroup driver: cgroupfs还是systemd
    SpringBoot项目实现发布订阅模式,真的很简单
    算法日常训练12.4(最接近目标价格甜点成本)
    【公益案例展】 温州市人民检察院——公益诉讼智能研判预警应用案例
  • 原文地址:https://www.cnblogs.com/shanyou/p/17143105.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号