背景

最近一直在搞一件事,就是熟悉Blazor,后期需要将Blazor真正运用到项目内。前期做了一些调研,包括但不限于

  • Blazor知识学习
  • 组件库生态预研
  • 与现有SPA框架做比对
  • 与WebForm做比对
  • 自己动手做个演示项目

最终的体验非常不错,功能全面。现有的一些SPA思想Blazor基本都有,现有的WebForm开发思想Blazor基本也包含,甚至提供了混合开发,可以开发PC/移动端应用。

Blazor真正做到了集技术大成于一体,如果我们再给予一些关注度,必成为下一个主流框架!

Blazor目前已经接近10K的star,关注度持续升高。大家也去star吧!

https://github.com/dotnet/blazor

Blazor知识学习

Blazor学习途径还是推荐官方文档,全而不乱,井井有条f,从基础到高级用法,层层递进。

https://docs.microsoft.com/zh-cn/aspnet/core/blazor/?view=aspnetcore-6.0

其次是Github,Github上各种组件库、项目模板,提供了充分的学习,借鉴渠道。可以看到Blazor真正在活跃。

https://github.com/search?q=Blazor

一个汇总库,提供了各个领域Blazor目前现有的一些模板、组件库,非常全面

https://github.com/AdrienTorris/awesome-blazor

组件库预研

Blazor组件库目前看来太多了,比较优秀,关注度比较高的有。

https://github.com/MudBlazor/MudBlazor

https://github.com/ant-design-blazor/ant-design-blazor

https://github.com/dotnetcore/BootstrapBlazor

组件库现在还在持续变多,可供选择性越来越高

与现有SPA比对

Blazor作为一个SPA框架,现有SPA基本上理念一致,MVVM思想中有的Blazor全都有:双向绑定、路由、依赖注入、组件化、事件处理...

也有不少人做过对应分析,十分不错

https://devathon.com/blog/blazor-vs-angular-vs-react-vs-vue/

https://www.telerik.com/blogs/blazor-vs-vue-web-developers

我也做了个简单的翻译

https://www.cnblogs.com/chenyishi/p/16595037.html

与WebForm做比对

为啥要与WebForm做比对?Blazor从开发模式说与WebForm还是有一点相似的,包括页面生命周期,项目结构,中间件...

官方也给我们提供了迁移文档,减小从webform迁移到blazor的难度。

https://docs.microsoft.com/zh-cn/dotnet/architecture/blazor-for-web-forms-developers/introduction

动手实战

光学不练可不行,就用MudBlazor做个Demo,试试Blazor WebAssemebly端和Blazor hybrid混合开发有多爽。

特别是Blazor hybrid混合开发,用HTML思想开发Winform,但逻辑用C#写而不是JS,体验原生性能,大家赶紧动起来吧!

别再听一些人说Blazor不行.NETCore+不行了,自己尝试下就知道多棒了!大家去star吧!https://github.com/dotnet/blazor

Blazor预研与实战的更多相关文章

  1. 数据质量管理工具预研——Griffin VS Deequ VS Great expectations VS Qualitis

    开源数据质量管理工具预研--Griffin VS Deequ VS Great expectations VS Qualitis. 概述 ​ 数据质量监控(DQC)是最近很火的一个话题,也是数据治理中 ...

  2. [转] 前后端分离开发模式的 mock 平台预研

    引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...

  3. 预研报告——MyBatis持久层的demo

    一.预研任务介绍和预研目标 任务介绍: 与 Hibernate 相比, MyBatis 是一个半自动化的持久层框架,以轻量级.效率高.原生代而好评如潮.虽然有在分享会上大致讲解,但是还是重新梳理成文字 ...

  4. Nvidia NVENC 硬编码预研总结

    本篇博客记录NVENC硬编码的预研过程 github:  https://github.com/MarkRepo/NvencEncoder 步骤如下: (1)环境搭建 (2)demo编译,测试,ARG ...

  5. android手势感应预研

    1.     产品介绍 该产品可以通过传感器来侦测用户的手势变化进而执行一些操作.比如说信息预览(如短信息预览.日历预览等等),此外,还可以通过指向某一个时间点来预览视频内容.预览音乐播放器(下一首歌 ...

  6. 基于zipkin分布式链路追踪系统预研第一篇

    本文为博主原创文章,未经博主允许不得转载. 分布式服务追踪系统起源于Google的论文“Dapper, a Large-Scale Distributed Systems Tracing Infras ...

  7. web项目自动化测试方案预研

    一.  网上方案整理 Watir.Watir-Webdriver.Selenium2.QTP区别 Waitr与Watir-WebDriver有什么区别? Watir是非常优秀的一款自动化测试工具.其使 ...

  8. MySQL高可用读写分离方案预研

    目前公司有需求做MySQL高可用读写分离,网上搜集了不少方案,都不尽人意,下面是我结合现有组件拼凑的实现方案,亲测已满足要求,希望各位多提建议 :) 一.    网上方案整理(搜集地址不详...) 1 ...

  9. GIS大数据存储预研

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 在实际项目运行中,时常会出现希望搜索周边所有数据的需求.但是 ...

随机推荐

  1. 一款开源的跨平台实时web应用框架——DotNetify

    今天给大家介绍一个开源的轻量级跨平台实时HTML+C#.NET Web应用程序开发框架--DotNetify,允许你在C#.NET后端上创建具有React.React Native.Vue或Blazo ...

  2. bare Git 仓库是什么?

    背景 今天,坐我旁边的同事问我一些关于服务器上命令的问题.其中有一个用了特殊参数的 git init 的命令,我也不认识,遂去 Google... bare Git 仓库 定义 A bare Git ...

  3. NB-IoT/LoRa/eMTC和蓝牙/WiFi的关系是互补还是替代?

    近年来,相继出现了许多物联网技术.WiFi.蓝牙.NB-IoT.LoRa.eMTC和其他技术为IoT实践提供了一流的技术支持通讯端口.拥有这么多技术,能够互相替代吗?还是能起到互补的作用?为低功耗广域 ...

  4. ubuntu使用postfix和AWS-SES发送邮件

    在日常开发中,邮件发送是个比较常见的场景.因此出现了很多相关的软件和服务,各大云厂商也推出自己的邮件服务.今天笔者就像大家介绍一种常见的组合,AWS的邮件服务 SES 与邮件服务器 postfix 的 ...

  5. Jenkins之配置GitHub-Webhook

    前提条件1: 运行Jenkins的机器需要安装git,并且git.exe文件在系统的环境变量里面,或者手动在 Manage Jenkins -> Global Tool Configuratio ...

  6. Javaweb_Tomcat配置

    1.基本概念 1.1 前言 web开发: web,网页的意思 静态web html,css 提供给所有人看的数据始终不会发生改变 动态web 淘宝,几乎所有的网站 提供给所有人看的数据始终会发生变化, ...

  7. Python简单实现自动评论、自动点赞、自动关注脚本

    一些哔哔: 今天的这个脚本,是一个别人发的外包,交互界面的代码就不在这里说了,但是可以分享下自动评论.自动点赞.自动关注.采集评论和视频的数据是如何实现的 开发环境 python 3.8 运行代码py ...

  8. 到点了开始网抑云(悲)但是用python(整活)

    写在前面的一点网抑云: 爱情不是随便许诺好了不想再说了没错 是我那么多的冷漠 让你感觉到无比的寂寞不过 一个女人的不仅仅渴望得到的一个承诺我害怕欺骗也害怕寂寞更害怕我的心会渐渐地凋落爱情不是随便许诺好 ...

  9. NC13328 倒水

    NC13328 倒水 题目 题目描述 有一个大水缸,里面水的温度为 \(T\) 单位,体积为 \(C\) 升.另有 \(n\) 杯水(假设每个杯子的容量是无限的),每杯水的温度为 \(t[i]\) 单 ...

  10. Springboot 整合 MongoDB

    Springboot 整合 MongoDB 这节我们将整合 Spring Boot 与 Mongo DB 实现增删改查的功能,并且实现序列递增. Mongo DB 的基本介绍和增删改查的用法可以参考我 ...