在vue的官网上写着vue的定义与特点:
- 渐进式JavaScript框架
- 易用、灵活和高效
所以,想要阐述此题,那么整体思路应该按照以上两点展开即可;
1. 渐进式JavaScript框架:
与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用,Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合、另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动;
上面这段话其实有点官方了,不易于理解,以下则是我个人的理解:
vue的设计理念是由简单到难的,而简单的部分却是最为核心的部分,只需要将这部分的内容掌握,就可以进行项目开发,这就是所谓的易于上手;而自底向上逐层应用,其实就是说,当项目比较复杂时,需要更多的东西去支持时,我们可以再次掌握深层次的东西,比如vue-router,vuex等,都可以在掌握核心知识之后,有必要使用的时候,再进行掌握,所以它是一个逐层应用的过程。
总的而言,vue不管从架构上来说,亦或从知识体系上来说,它都是一个循序渐进的过程。
2. 易用性
vue提供数据响应式、声明式模板语法和基于配置的组件系统等核心特性,这些使我们只需要关注应用的核心业务即可,只要会写js、html、css就能轻松编写vue应用。
而当业务有所需要,我们可以进行深层次的学习,不需要在前期上来就掌握大量的知识体系,vue的学习曲线很平缓,它是一个递进的过程,所以就学习vue框架而言,它是简单易学的。
3. 灵活性
渐进式框架的最大优点就是灵活性,如果应用足够小,我们可能仅需要vue核心特性即可完成功能;随着应用规模的不断扩大,我们才可能逐渐引入路由、状态管理、vue-cli等库和工具,不管是应用体积还是学习难度都是一个逐渐增加的平和曲线。
4. 高效性
超快的虚拟DOM和diff算法使我们的应用拥有最佳的性能表现;
追求高效的过程还在继续,vue3中引入Proxy对数据响应式改进以及编译器中对于静态内容编译的改进都会让vue更加高效。
5. 总结
对于“vue设计原则”的这个问题,应该参考以上四点进行阐述,从不同角度分析vue,以便告诉面试官自己对于vue的理解。