6

Vue.js有什么优点,为什么会流行?

 1 year ago
source link: https://blog.p2hp.com/archives/10824
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Vue.js是计算机发展的趋势使然

计算机的历史总是遵循分久必合合久必分的趋势,最开始Web前端硬件和浏览器的性能不够,为了用户体验和性能,开发者会选择像 Rails 类似的框架 来进行服务端模板渲染以提升性能,但是服务端模板渲染的技术弊端是,当前端界面复杂度达到PC软件的规模时,界面的调整太依赖于后端和DOM结构树的查询节点树,一旦要更新页面布局和设计时就需要后端改动一下,前端也改动一下,一旦前端界面大改时,JQuery这种依赖模板和DOM查询节点的方法就会很被动,因为界面布局和结构发生巨变时,DOM节点查询链条很容易断裂,代码也不敢轻易变动和删除,导致项目越久,代码冗余越多,项目也变得很难维护。

Vue.js 主要解决的问题是,整个前端的界面修改都是在浏览器中完成的, 服务端只用提供API即可,而且界面整体逻辑是通过属性来动态绑定的,界面布局调整的JS代码并不依赖于DOM的节点查询,如果需要修改界面布局和设计时,只用大胆的调整前端模板和CSS样式即可,JS逻辑和后端代码都不用配合修改,整个界面改动的负担很小,可维护性也非常好。

原来学Rails的时候,对Vue.js和React的技术抱有偏见,很多Web的开发者总是争论到底是后端服务渲染好,还是Vue.js这种前端框架好?在我看来,任何撇开时代背景和用户需求的技术讨论都是个人喜好性质的讨论。

从总体来说,用户肯定希望界面交互越复杂越精致越好,不论后端渲染还是Vue.js这种前端框架,从理论上都是可以满足用户的计算需求的,只是Vue.js这种前端框架把真实的计算逻辑和界面布局给完全分开了,当快速迭代产品设计和交互体验时,Vue.js的更新和维护负担更小,成本更低的改动就意味着生产力和竞争力。

所以Vue.js这种前端框架的大行其道,并不是技术框架在技术层面的谁优谁劣,而是Web终端硬件性能提升和用户对Web应用功能期待的一种自然而然的演化行为,虽然Vue.js/React这种技术有很多技术细节和优点,但是从架构设计上来看,其实当今的Web技术又回到微软时代的那种前后端分离的技术,架构上是没有区别的,只是Vue.js相对于MFC、Gtk这类的技术,通过属性绑定和动态DOM的技术能够更有生产力的编写前端界面。

Vue.js 的优点

对于我这种非常熟悉Gtk/Qt的开发者来说,我更喜欢Vue.js这种前后端分离的设计,因为前端的修改非常有效率,实时可以看到最新的界面效果,同时后端也可以做的很薄,后端从模板构造和服务的泥潭中解放出来,后端可以更专注于后端架构设计、工程化运维和性能优化。

Vue.js 的优点主要有以下几点:

  1. 通过属性绑定和DOM Tree Diff更新的技术来实时渲染Web界面,前端开发生产力非常高
  2. Vue.js的作者是国人,中文文档写的非常好,我想这也是Vue.js在中国非常流行的原因,官方的文档看一天即可入门
  3. 内置 VueRouter、Vuex全家桶,包括 vue-cli 的发布,真正做到开箱即用,不用折腾各种插件和让人绝望的Webpack配置即可快速把精力投入到产品开中
  4. *.vue 文件一体化的设计,模板、JS代码和CSS样式,一个组件一个文件,非常好维护
  5. 插件生态非常好,常用的各种插件都有Vue的版本,npm或者yarn都可以快速实验插件功能

via https://manateelazycat.github.io/web/2019/07/14/vue-tooltips.html


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK