Blazor和Vue对比学习:说在开始前
1、Vue:现代前端三大框架之一(Vue/React/Angualr),基于HTML、CSS和JavaScript,2014年正式对外发布,目前已发展到3.X版本。值得说道的是,Vue的创始人作者是华裔尤雨溪,这可能也是Vue在中国特别受欢迎的原因之一。
2、Blazor:.NET技术体系的现代前端框架,基于HTML、CSS和C#,2019年正式发布了Blazor Server,2020年发布Blazor Webassembly,2022年还将发布Blazor Hybrid。Blazor的这三个分支,各有其特点和应用场景,但技术栈是一致的。在前端领域,Blazor还是新生力量,但有:①微软背书;②继承了Asp.NET Core的成熟技术MVC和Razor;③紧跟着面向未来的Webassembly;④借壳Maui,以类似React Native的方式实现跨端。所以,在前端领域,一定会有Blazor的一席之地,作为.Neter,学习、了解、甚或掌握它,那是必须滴。
3、现代前端框架:从我的认知来看,应该要具备渐进式、声明式、组件化和单文件等几个重要特征,Vue和Blazor都具备。React和Angular的了解比较少,但据说Vue早期受到Angular的启发,后期发展过程中,这几个框架又相互借鉴,Blazor更是到了2019年才出现,可以说是站在前人的肩膀上,所以Vue和Blazor的差异,在我看来主要体现在实现方式上,原理上大同小异。
4、对比学习:现代技术发展很快,这个趋势前后端都一样,都很卷,谁也别说谁。但对于喜欢学习的人来说,却是感觉余生有幸。在纷繁的技术栈里,每个领域都有好几个优秀的框架,我觉得通过对比总结,是非常有效的学习方式。所以在这个系列里,我们通过对比的方式开始一起来学习Vue和Blazor。我的目标,是通过这个系列的学习后,Vue和Blazor的水平,都能达到中级,也即可以操刀项目的水平。
(我还不是砖家,这个系列只是一起学习的记录!)
Blazor和Vue对比学习:说在开始前的更多相关文章
- Blazor和Vue对比学习(基础1.4):事件和子传父
Blazor和Vue的组件事件,都使用事件订阅者模式.相对于上一章的组件属性,需要多绕一个弯,无论Blazor还是Vue,都是入门的第一个难点.要突破这个难点,一是要熟悉事件订阅模式<其实不难& ...
- Blazor和Vue对比学习(进阶2.2.4):状态管理之持久化保存(2),Cookie/Session/jwt
注:本节涉及到前后端,这个系列的对比学习,还是专注在前端Vue和Blazor技术,所以就不撸码了,下面主要学习概念. 我们知道,Http是无状态协议,客户端请求服务端,认证一次后,如果再次请求,又要重 ...
- Blazor和Vue对比学习(基础1.8):Blazor中实现计算属性和数据监听
1.7章<传递UI片断>,需要做几个案例,这部分暂停消化几天.我们先把基础部分相对简单的最后两章学习了. 计算属性和数据监听是Vue当中的概念,本质上都是监听数据的变化,然后做出响应.两者 ...
- Blazor和Vue对比学习(基础1.9):表单输入绑定和验证,VeeValidate和EditFrom
这是基础部分的最后一章,内容比较简单,算是为基础部分来个HappyEnding.我们分三个部分来学习: 表单输入绑定 Vue的表单验证:VeeValidate Blazor的表单验证:EditForm ...
- Blazor和Vue对比学习(基础1.1):组件结构
难度:★ 简单说一说: 1.Vue和Blazor都遵循单文件结果,即HTML(视图模板).CSS(样式).JS/C#(代码逻辑)写在一个文件里,Vue的文件后缀为.vue,Blazor的文件后缀为.r ...
- Blazor和Vue对比学习(基础1.2):模板语法和Razor语法
Vue使用模板语法,Blazor使用祖传的Razor语法,从逻辑和方向上看,两者极为相似,比如: 都基于HTML 都通过声明式地将组件实例的状态(数据/方法)绑定到呈现的DOM上 都通过指令实现更加丰 ...
- Blazor和Vue对比学习(基础1.3):属性和父子传值
组件除了要解决视图层展示.视图层与逻辑层的数据绑定,还需要解决一个重大问题,就是在组件树中实现数据传递,包括了父到子.子到父.祖到孙,以及任意组织之间.而我们上一章讲到的实现双向绑定的两个指令,Vue ...
- Blazor和Vue对比学习(基础1.5):双向绑定
这章我们来学习,现代前端框架中最精彩的一部分,双向绑定.除了掌握原生HTML标签的双向绑定使用,我们还要在一个自定义的组件上,手撸实现双向绑定.双向绑定,是前两章知识点的一个综合运用(父传子.子传父) ...
- Blazor和Vue对比学习(基础1.6):祖孙传值,联级和注入
前面章节,我们实现了父子组件之间的数据传递.大多数时候,我们以组件形式来构建页面的区块,会涉及到组件嵌套的问题,一层套一层.这种情况,很大概率需要将祖先的数据,传递给子孙后代去使用.我们当然可以使用父 ...
随机推荐
- numpy中,从一片c_void_p指向的区域里获取数据
以前采用的数据拷贝的笨办法: 1 bitmap_size = (1080, 1920, 3) 2 buf = create_string_buffer(bitmap_size[0]*bitmap_si ...
- Docker安装配置mysql
Docker安装mysql踩坑日记 拉取镜像 sudo docker pull mysql:5.7 运行镜像 docker run -p 3306:3306 --name mysql -v /myda ...
- golang中结构体和结构体指针的内存管理
p1是结构体,p2是结构体指针. 2. 声明并赋值结构体和结构体指针 package main import "fmt" type Person struct { name str ...
- gin中如何自定义中间件
package main import ( "fmt" "github.com/gin-gonic/gin" ) func main() { // 新建一个没有 ...
- Go 面向对象之结构体
#### Go 面向对象之结构体最近有四天没更新公众号,有一些事情耽误了,生活就是这样,总会一些事情让人措不及防; ***山浓水浅,坐看流年***1. Go 也支持面向对象编程(OOP) 但是它和传统 ...
- zabbix安装 报错 socket '/var/lib/mysql/mysql.sock' (13)]
安装界面提示: Error connecting to database: Can't connect to local MySQL server through socket '/var/lib/m ...
- Maven仓库的目录结构
_remote.repositories文件 本地库中的包都有一个_remote.repositories文件,示例: #NOTE: This is an Aether internal implem ...
- 生成"cmd.exe"错误
转载请注明来源:https://www.cnblogs.com/hookjc/ 在VC2005里打开"工具"菜单,选择"选项",打开"选项" ...
- Java向mysql中插入时间的方法
ava向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 java向MySQL插入当前时间的四种方式 第一种:将java.util.Date类型的 ...
- Java GUI 简单台球游戏模型
完成效果: 1 package com.neuedu.test; 2 3 import java.awt.Frame; 4 import java.awt.Graphics; 5 import jav ...