最近也算很火的Agular和vue到底有什么区别,就简单分析下

Agular和vue到底有什么区别

angular

angular一般指 angular2 及以上版本。2010年9月,Google 发布首次angular,即angular1版本。2016年10月 Google 又发布了angular2版本,但是2版本与1版本有非常大的区别,几乎是全部重写,且不向前兼容,更像是一个全新的框架。遂将angular1改名叫angularJs,现angular特指angular2+。

vue

于 2014 年 2 月首次由 Google 前员工尤雨溪发布。凭借较低的上手难度、良好的性能,成为2016 年发展最为迅速的 JS 框架之一,特别是国内的增长及其迅速。

框架对比

1.体积和性能
相较于vue,angular显得比较臃肿,比如一个包含了 Vuex + Vue Router 的 Vue 项目 (gzip 之后 30kB) ,比angular-cli 生成的默认项目尺寸 (~65KB) 还是要小得多。
在渲染性能上,这两个框架都很快,性能上几乎没有差别。

2.开发效率
都提供了各自的脚手架工具,帮助提高从开发到构建打包的整套过程,另外均可以基于组件化开发,编写可复用的组件,大大较少重复性的工作。但angular凭借 Typescript 本身比 JavaScript 更加工程化的优势,在都是团队开发的情况下,angular会更具优势。

3.灵活性
Vue 相比于 Angular 更加灵活,可以按照不同的需要去组织项目的应用代码。比如,甚至可以直接像引用jquery那样在HTML中引用vue,然后仅仅当成一个前端的模板引擎来用。

4.可维护性
我理解的可维护性包括两个层次,一是代码的可读性,二是可重构性。同样是因为对TS(能提供静态类型检查)的支持不够全面,使得vue在这两个层次都有些不足。vue作者本人也承认vue在TS 的支持上还有所不足,在3.0版本中将会有所改进。

5.es6支持
es6是新一代的javascript标准,对JavaScript进行了大量的改进,使用es6开发已是基本需求。虽然有部分十分老旧的浏览器不支持es6,但是可以利用现代开发工具将es6编译成es5。在对es6的支持上两者都做得很好,(TS本身就是es6的超集)

6.学习曲线
针对前端而言,angular的学习曲线相对较大,vue学习起来更容易一些。不过对java和c的使用者而言,angular的静态检查、依赖注入的特性,以及面向对象的编程风格,使得angular都要更亲切一些。

7.使用热度
在使用热度上,vue具有更大优势,主要原因是更受数量庞大的中国开发者欢迎。较低的上手难度,易懂的开发文档,以及国人主导开发的光环,都使得vue在国内更为流行。但最近6个月似乎情况有所变化:

总结

1、相较于vue,angular的优点:

开发效率更高
可维护性可强
对java和c使用者更友好

2、缺点:

体积大
灵活性差,不能随心所欲的选择使用方式
学习曲线陡峭
国内使用热度不及vue

3、vue与angular之间的共同点:

都支持指令:内置指令和自定义指令。
都支持过滤器:内置过滤器和自定义过滤器。
都支持双向数据绑定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值