什么是Blazor
MSDN1中的定義十分貼切, 此處照搬過來:
Blazor 是一個使用 .NET 生成交互式客戶端 Web UI 的框架:
使用 C# 代替 JavaScript 來創建信息豐富的交互式 UI。
共享使用 .NET 編寫的服務器端和客戶端應用邏輯。
將 UI 呈現為 HTML 和 CSS,以支持眾多瀏覽器,其中包括移動瀏覽器。
與新式托管平台(如 Docker)集成。
不嚴謹地說, Blazor就是用C#部分代替JavaScript來寫前端.
Blazor的優勢
-
簡潔. 頁面布局清晰, 不過分追求華麗效果
-
統一. 頁面風格統一
-
開發效率高. 基於組件, 十分方便代碼復用, 同時可以利用現有的.NET庫, 利於快速實現原型
-
高性能. 具有.NET血統的Blazor自然也帶着高性能的優點
Blazor的劣勢
-
官方文檔不完善. 雖然MSDN一向以高質量著稱, 但作為發布僅兩年的框架, 文檔並不算完善, 實際開發中遇到的很多問題在官方文檔中沒有解決方案.
-
生態資源少. 目前的互聯網生態是基於JS的, Blazor的生態資源並不多.
-
調試相對麻煩. 對代碼做出改動后需要重新編譯, 重新啟動調試.
-
無法總結操作DOM. DOM操作仍然依賴JavaScript, 調用JavaScript的過程相對復雜