微软在.NET 10正式版中导入新的统一构建架构(Unified Build),重整产品构建与发行流程,让版本更新与安全修补的速度与可预测性大幅提升。官方提到,这项改造是.NET团队近4年投入基础构建工作的成果,结合原先Linux源码构建经验,目标是简化多存储库开发造成的构建延迟与维护负担。

过去.NET的开发分散在多个存储库,执行环境(Runtime)、ASP.NET Core、SDK与WindowsDesktop等组件各自独立。分散架构虽有利于社交媒体开发,但在多版本维护与安全修补时却导致流程复杂,要确保所有组件版本一致,团队需多次重建、审查与验证,往往耗时长十小时甚至数天。根据微软数据,.NET 8的Runtime构建历程中,约有40%时间其实花在调度、等待与重复操作等非产出步骤上。

统一构建架构采用虚拟单一存储库(Virtual Monolithic Repository,VMR)技术,将原本分散的程序代码集成为统一源码版面(Source Layout)。开发者仍可在各自存储库作业,但正式构建只依VMR内容进行,确保所有版本源自单一提交点,该方法不仅减少协调与相依项目更新的时间,也提升整体一致性。

统一构建架构改采垂直构建(Vertical Build)概念,每个垂直构建负责特定平台与堆栈,像是Windows x64或Linux Arm64,能以单一命令在单机完成,如此降低跨平台依赖性,使构建流程更单纯。部分跨平台组件仍需额外构建阶段处理,但整体效率已大幅改善。

Linux发行版维护者可通过源码构建机制脱机重建.NET,以符合授权与可追溯的要求,而统一构建架构则把这种以单一来源为中心、偏垂直的构建模式,从过去主要用于Linux发行版的源码构建,推广到微软官方.NET的整体产品构建流程。同时,.NET团队引入仅供参考的组件(Reference-only)组件,用来提供编译时所需的API界面,取代过去那些仅需提供编译界面而不必真正建出实例的旧版相依组件,进一步降低历史依赖性的维护成本。

统一构建架构将完整构建时间压缩至7小时内,未签章版本甚至可在4小时完成,也就是说,开发团队每天能生成多个可验证版本,大幅缩短修补与验证周期,相较过去动辄超过一天的分布式构建,现在的流程更有弹性。

新架构允许针对完整产品执行场景测试,而非仅限于单一存储库,因此能早发现跨堆栈兼容性问题,减少在版本冻结阶段(RTM Build)的回溯修正。微软表示,这种整体验证方式有助于确保.NET版本间的稳定性与可靠性。