laizimo / zimo-article

:books:博客——源于实践,乐于分享,欢迎Star~
1.06k stars 91 forks source link

面试题总结(二) #11

Closed laizimo closed 6 years ago

laizimo commented 7 years ago

前言

本篇将总结阿里二面所涉及到的知识点,以及便利蜂的视频面试

正文

本次总结的是阿里的第二次面试(总体感觉来说答的不是特别好,感觉会挂,表示已挂,不过没关系,面试就是最好的知识总结)

下面我们来聊一聊阿里的面试问题

1. 三大框架(angular2、react、vue)各自的优缺点

这个问题回答起来比较的蛋疼。因为本人并未使用所有的框架,只会angular2和react,vue只是初步的了解。所以,只答了一些angular2和react之间的优缺点。

首先我们来聊一下angular2和react之间的差别(个人观点,后面放一篇专门的文章)

angular2的分析:

好处:angular2本身是一个框架,它具备组件化的思维,可构造出高复用的组件。它具备指令的特性可以与组件进行结合,衍生出复杂的UI。以及它的依赖注入的思想的运用、脏检测实现的双向绑定机制、管道的使用,模块的封装,路由的模块懒加载,zone的异步控制,自身html模版的错误检测等,都是它本身的一些特点。

劣势:由于它本身是一个框架,所以自身具备的约束条件无法满足开发的高度可定制化;而且本身的内容比较庞大,往往会造成一些框架本身内容的堆积(aot可以解决这个问题);本身的上手难度较大,自身模版的语法较多。

react的分析:

好处:react本身是一个类库,它具备小而美,灵活的特点。visual DOM的机制,可以避免我们频繁的操作DOM;diff方法的低复杂度高性能,使得更新DOM时的高效;setState机制,可以保持整个系统的数据化驱动;还有对于事件,react自身实现了事件合成系统,可以方便我们轻易的操控事件;还有就是它本身的js语言的使用,非常容易上手。

劣势:react在大型系统中使用时,往往会导致状态的混乱,需要加入redux等单向数据流框架对其进行约束。它的setState机制,对于新手来说不容易掌握,如果不能深入理解它的原理的话,可能会制造出意想不到的小问题。

laizimo commented 7 years ago

Why Vue 2 beats Angular2 and React Comparing Angular 2 vs React vs Vue Vue对比其他框架