angular学习是有好处
那 到底要不要学?个人觉得就是要看发展趋势。angular是否简化的前端开发,是否符合未来前端的开发趋势。以现在的js的发展程度来看,angular 是符合发展趋势的,第一,解耦前端,第二,可以模块化,第三可测试,第四天生支持json,第五依赖注入等等等,还有一些其他特性使得angular跟随 甚至是推动了前端的开发趋势。
所以说angular学习是有好处的:
1.了解前端的开发趋势
2.学习MV*的设计方法
3.学习模块化编程
4.学习如何测试模块
5.使用angular简化开发流程
6.随着google的大力支持和逐渐流行,公司开始使用angular,有些岗位需要有angular的知识才能工作。
链接:http://www.zhihu.com/question/22284218/answer/20893162
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
1. 模板功能强大丰富,并且是声明式的,自带了丰富的Angular指令;
2. 是一个比较完善的前端MV*框架,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能;
3. 自定义Directive,比jQuery插件还灵活,但是需要深入了解Directive的一些特性,简单的封装容易,复杂一点官方没有提供详细的介绍文档,我们可以通过阅读源代码来找到某些我们需要的东西,如:在directive使用 $parse;
4. ng模块化比较大胆的引入了Java的一些东西(依赖注入),能够很容易的写出可复用的代码,对于敏捷开发的团队来说非常有帮助,我们的项目从上线到目前,UI变化很大,在摸索中迭代产品,但是js的代码基本上很少改动。
5. 补充:Angular支持单元测试和e2e-testing。
缺点:
1. 验证功能错误信息显示比较薄弱,需要写很多模板标签,没有jQuery Validate方便,所以我们自己封装了验证的错误信息提示,详细参考 why520crazy/w5c-validator-angular · GitHub ;
2. ngView只能有一个,不能嵌套多个视图,虽然有 angular-ui/ui-router · GitHub 解决,但是貌似ui-router 对于URL的控制不是很灵活,必须是嵌套式的(也许我没有深入了解或者新版本有改进);
3. 对于特别复杂的应用场景,貌似性能有点问题,特别是在Windows下使用chrome浏览器,不知道是内存泄漏了还是什么其他问题,没有找到好的解决方案,奇怪的是在IE10下反而很快,对此还在观察中;
4. 这次从1.0.X升级到1.2.X,貌似有比较大的调整,没有完美兼容低版本,升级之后可能会导致一个兼容性的BUG,具体详细信息参考官方文档 AngularJS ,对应的中文版本: Angular 1.0到1.2 迁移指南
5. ng提倡在控制器里面不要有操作DOM的代码,对于一些jQuery 插件的使用,如果想不破坏代码的整洁性,需要写一些directive去封装插件,但是现在有很多插件的版本已经支持Angular了,如: jQuery File Upload Demo
6. Angular 太笨重了,没有让用户选择一个轻量级的版本,当然1.2.X后,Angular也在做一些更改,比如把route,animate等模块独立出去,让用户自己去选择。
当然使用的人多才会暴露更多的问题,一起为这些问题寻找解决方案是一个社区的良性趋势,选择Angular,的确使我们的开发效率大大提高
- 环境管理复杂 - 从各种OS到各种中间件到各种app, 一款产品能够成功作为开发者需要关心的东西太多,且难于管理,这个问题几乎在所有现代IT相关行业都需要面对。
- 云计算时代的到来 - AWS的成功, 引导开发者将应用转移到 cloud 上, 解决了硬件管理的问题,然而中间件相关的问题依然存在 (所以openstack HEAT和 AWS cloudformation 都着力解决这个问题)。开发者思路变化提供了可能性。
- 虚拟化手段的变化 - cloud 时代采用标配硬件来降低成本,采用虚拟化手段来满足用户按需使用的需求以及保证可用性和隔离性。然而无论是KVM还是Xen在 docker 看来,都在浪费资源,因为用户需要的是高效运行环境而非OS, GuestOS既浪费资源又难于管理, 更加轻量级的LXC更加灵活和快速
- LXC的移动性 - LXC在 linux 2.6 的 kernel 里就已经存在了,但是其设计之初并非为云计算考虑的,缺少标准化的描述手段和容器的可迁移性,决定其构建出的环境难于迁移和标准化管理(相对于KVM之类image和snapshot的概念)。docker 就在这个问题上做出实质性的革新。这是docker最独特的地方。
angular学习是有好处相关推荐
- 小孩学计算机技术有什么好处,儿童学习电脑的好处
儿童学习电脑的好处非常多,总结起来大致有以下几点: 1.电脑在信息时代扮演着重要的角色.孩子愈早认识电脑,就愈能帮助他们摆脱"电脑恐惧症"的阴影,进而了解如何在未来生产生活中,居于 ...
- angular 学习资源
README.md AngularJS学习 注:截至2016年10月,有一个[收集Angular 2的链接的新回购](https://github.com/jmcunningham/AngularJS ...
- 设计模式总结篇(为什么要学习设计模式,学习设计模式的好处)
版权声明:转载必须注明本文转自晓_晨的博客:http://blog.csdn.net/niunai112 在学习完设计模式后,LZ想告诉大家: 对于一名工作不久的程序员来说,学习设计模式是非常有必要的 ...
- angular学习(六)—— 依赖注入
转载请写明来源地址:http://blog.csdn.net/lastsweetop/article/details/53409171 依赖注入 依赖注入(DI)是一种处理组件如何获得依赖的软件设计模 ...
- 编程是什么 学习编程的好处
编程是什么意思 编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程. 为了使计算机能够理解人的意图,人类就 ...
- angular学习-2021.5
angular学习笔记 1.基本概览 模块 Module 组件 Component 指令 Directive 服务 Service 路由 Router 2. 模块Module 2.1 模块的含义 2. ...
- 学习机器学习的好处有哪些
学习机器学习的好处有哪些 宏观上来分,基本上所有的机器学习算法都有两个层面的功效:面向过去(历史数据)找规律:根据归纳出来的规律面向未来(新样本)去预测,如图 1 所示. 机器学习算法的两层功效 图 ...
- 口琴膜片什么作用_学习口琴的好处
学习口琴的好处:和孩子们平等交流,建立良好的师生关系 在器乐合奏的同时,师生之间.同学之间的交流也是非常必要和重要的.一只曲子它的意境和表现手法对于每个聆听者来说都有不一样的感受,怎样在演奏的时候协调 ...
- 小儿计算机编程是什么意思,小儿趣味编程是什么,幼儿学习编程的好处以及要点...
近年来关注小儿趣味编程是什么的用户越来越多,小编整理了关于幼儿学习编程的好处以及要点??,供您参考 1.幼儿学习编程的好处以及要点 一.幼儿学习编程的好处 强化孩子逻辑思维 孩子学编程的过程中,要思考 ...
最新文章
- 个人所得税计算,计算器.
- 谷歌 colab_如何在Google Colab上使用熊猫分析
- 动手学PaddlePaddle(3):猫脸识别
- java excel api及详细教程_针对Java Excel API及详细教程
- 计算机组成原理第二章数据,计算机组成原理第二章数据在计算机中的表示
- html2canvas在不同设备生成图片大小不一致问题
- 《HBase权威指南》读书笔记6:第六章 可用客户端
- 文法规则自顶向下分析
- msxml6 C++
- 运放放大倍数计算公式_运放选型速记指南
- 进阶系列(11)—— C#多线程
- 起伏激荡的以太网,抱上这条大腿才能乘风破浪
- 用IMU监测力量训练中的杠铃速度,帮助科学界和体育界评估杠杆运动学
- error[E0308]: Rust 闭包函数锁定参数类型
- 直播频频翻车:追风口的人,变成风口杀手
- C语言 将十六进制字符串转为十六进制数 (二进制、十进制都适用)
- china.js实现中国地图
- 【很容易忽视的问题】为何使用护卫神iis-windows服务器,在使用护卫神主机修改网站信息后则无法访问的根本原因??
- pring AOP介绍与使用
- 关于计算机的英语作文120词,关于朋友英语作文120词