面试题
vue和react的区别
数据流向的不同。react从诞生开始就推崇单向数据流,而Vue是双向数据流
数据变化的实现原理不同。react使用的是不可变数据,而Vue使用的是可变的数据
组件化通信的不同。react中我们通过使用回调函数来进行通信的,而Vue中子组件向父组件传递消息有两种方式:事件和回调函数
diff算法不同。react主要使用diff队列保存需要更新哪些DOM,得到patch树,再统一操作批量更新DOM。Vue 使用双向指针,边对比,边更新DOM
vue2和vue3的区别
策略模式的定义和应用场景
定义
策略模式(Strategy Pattern)指的是定义一系列的算法,把它们一个个封装起来,目的就是将算法的使用与算法的实现分离开来
一个基于策略模式的程序至少由两部分组成:
策略类,策略类封装了具体的算法,并负责具体的计算过程
环境类Context,Context 接受客户的请求,随后 把请求委托给某一个策略类
应用场景
从上面可以看到,使用策略模式的优点有如下:
策略模式利用组合,委托等技术和思想,有效的避免很多if条件语句 策略模式提供了开放-封闭原则,使代码更容易理解和扩展 策略模式中的代码可以复用 策略模式不仅仅用来封装算法,在实际开发中,通常会把算法的含义扩散开来,使策略模式也可以用来封装 一系列的“业务规则”
只要这些业务规则指向的目标一致,并且可以被替换使用,我们就可以用策略模式来封装它们
文档
Nodejs的事件循环
如何设计一个组件库
设计原则
- 细粒度
- 通用性