OpenSilver: 通过WebAssembly 复活Silverlight
本月早些時(shí)候,Userware發(fā)布了第一個(gè)版本的OpenSilver,微軟Silverlight 的開(kāi)源重新實(shí)現(xiàn)。OpenSilver 通過(guò)WebAssembly? 實(shí)現(xiàn)無(wú)需任何其他插件在?瀏覽器上運(yùn)行。OpenSilver 的當(dāng)前版本可作為"技術(shù)預(yù)覽"版本提供,它涵蓋了大約 60% 的原始Silverlight API。
Userware 是一家總部位于巴黎的軟件公司,專門從事微軟技術(shù)。他們還開(kāi)發(fā)了CSHTML5(一個(gè) Visual Studio 擴(kuò)展版)之后,它允許將 C# 和XAML代碼編譯為 HTML 和 JavaScript。據(jù)Userware首席執(zhí)行官Giovanni Albani 介紹,OpenSilver的目標(biāo)是成為一個(gè)更好的開(kāi)源版本的Silverlight(已被微軟棄用,其支持計(jì)劃于2021年10月結(jié)束):
(OpenSilver) 將 C#、XAML 和 .NET 的強(qiáng)大功能帶回客戶端 Web 開(kāi)發(fā)。當(dāng)談到豐富的互聯(lián)網(wǎng)應(yīng)用程序 (RIA) 或單頁(yè)應(yīng)用 (SPA) 的開(kāi)發(fā)時(shí),Silverlight 提供了前所未有的生產(chǎn)力和效率。重振Silverlight 榮耀并使之變得更好的愿景是雄心勃勃,但它是可以實(shí)現(xiàn)的。Silverlight 的故事不會(huì)在2021年結(jié)束。它的故事剛剛被寫出來(lái)。
據(jù)該公司稱,OpenSilver完全依靠開(kāi)放標(biāo)準(zhǔn)來(lái)重新實(shí)施Silverlight 使用Mono?的WebAssembly和微軟Blazor。它與.NET 標(biāo)準(zhǔn)(未指定的版本)和 JavaScript 兼容,允許直接導(dǎo)入和使用現(xiàn)有的 JavaScript 庫(kù)以及 C# 代碼。此外,使用 WebAssembly 使 OpenSilver 應(yīng)用程序無(wú)需插件即可在現(xiàn)代瀏覽器(桌面和移動(dòng)瀏覽器)上運(yùn)行,Silverlight 就是如此。
該版本還將 OpenSilver 定位為傳統(tǒng) Silverlight 應(yīng)用的可能遷移工具。Userware 確認(rèn),將舊應(yīng)用程序遷移到 OpenSilver 可能比使用其他技術(shù)重寫它"便宜 3 到 5 倍"。該公司還提供專業(yè)的Silverlight遷移服務(wù)作為其付費(fèi)服務(wù)之一。
作為發(fā)布的一部分,Userware 發(fā)布了一個(gè)包含功能示例和代碼段的展示應(yīng)用程序。該應(yīng)用程序以 C# 和 XAML 編寫,并使用 OpenSilver 編譯到 WebAssembly中。除了一些基本組件和XAML功能外,該應(yīng)用程序還具有對(duì) WebSocket 和SignalR擴(kuò)展演支持 的Demo 。
其他第三方組件(如 Telerik UI 和Open RIA 服務(wù))被列為未來(lái)的Demo 組件(根據(jù)官方路線圖計(jì)劃于 2020 年完成)。隨著Mono的提前編譯功能,將于今年晚些時(shí)候發(fā)布,預(yù)計(jì)性能也將顯著提高("至少30倍")。該版本的其他當(dāng)前限制包括編輯 XAML 代碼時(shí)沒(méi)有自動(dòng)完成/智能提示,以及支持 ResX 文件。
OpenSilver 技術(shù)預(yù)覽可以從用戶軟件的網(wǎng)站下載,作為 Visual Studio 2019 擴(kuò)展。源代碼也可在 GitHub(與 CSTHML5 一起在共享存儲(chǔ)庫(kù)中)使用。
總結(jié)
以上是生活随笔為你收集整理的OpenSilver: 通过WebAssembly 复活Silverlight的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何编写高性能的C#代码(四)字符串的另
- 下一篇: 程序员过关斩将-- 喷一喷坑爹的面向UI