angular 学习学哪个版本的好

2019-11-15 18:34:29 +08:00
 woahishui
最近看了前端好多都要求 angular,这个目前大家都用哪些版本呢
5290 次点击
所在节点    程序员
19 条回复
ddup
2019-11-15 18:44:19 +08:00
2.x 起都大同小异,可以从 angular 9 最新版本用起,ivy 编译器加持后,应用压缩后体积有恐怖减少,Hello word 是 7kb,大点的项目尚且不知道效果如何,估计效果也会比较惊喜。面试的时候就可以介绍介绍。
sun522198558
2019-11-15 18:47:45 +08:00
学 react 把,目测肯定比 angular 多
ddup
2019-11-15 18:55:18 +08:00
ToDo App 是 12.2kb ,angular 一下子成为体积几乎最小的单页面框架了。

还不清除什么原理,可能跟 angular 框架全部使用 typescript 编写有很大关系,基于强类型的语言可以做静态分析,这样就可以,在编译的时候就确定代码的依赖关系(不过 ts 也可以弱类型,这部只能用传统方法)。

在 2018 ng-conf 上 Angular 团队给出了一个 ivy 的 todo 应用的 demo :ivy-todo-list,这个应用的 bundle 大小是 12.2kb ,这个 todo app 的 demo 就在 github angular 的仓库中,地址: https://github.com/angular/angular/tree/master/packages/core/test/bundling/todo

https://zhuanlan.zhihu.com/p/51291587
hantsy
2019-11-15 19:29:45 +08:00
react 太 JS 了,Angular 比较 OOP,自己根据需要选择。

React 虽然现在也内置支持 Typescript,但 JS 概念根深蒂固,如果对 High order functions 不敏感的话,写出来的 React 也是半吊子。

Angular 对于熟悉 Java8,Spring 等有 OOP 的开发经验的人员,可以说是粘手就来,学习成本非常低。对于传统 JS ( ES5 )过来的人,无 OOP 概念的,学习成本反而高。
elone
2019-11-15 21:44:58 +08:00
从 react 转到 Angular 之后,写了好几个项目了。学习 angular 就直接学习官方最新版本就好了。
elone
2019-11-15 21:45:57 +08:00
@ddup 目前稳定版是 8 吧?
ochatokori
2019-11-15 21:55:34 +08:00
当然学新不学旧,除非公司明确要求哪个版本你又很想去
Austaras
2019-11-15 22:13:09 +08:00
@hantsy 是 TypeScript 内置支持 JSX,其他观点基本同意,react 尤其是 hook 需要一些思维转变
learnshare
2019-11-15 22:34:42 +08:00
最新版
然而 Angular 方向的工作机会不那么多,推荐 React 一起学
( Vue ?可以考虑等新版本)
youngxhui
2019-11-15 22:37:50 +08:00
@elone 是的,好像 9 快发布了
hantsy
2019-11-15 22:52:14 +08:00
@Austaras 两个方面的东西。
1. tsc, 或者 babel 能够 transpile JSX 语法
2. React 在很长的一段时间,不支持 Type 检测,后来支持自家的 Flow,再后来终于放弃了 Flow,支持 Typescript。现在如果使用 Typescript 写 React,完全可以使用 TS 语法全部静态检测类型。众所周知,静态类型对 IDE 工具很友好,可以避免很多不必要的错误。
CoderLife
2019-11-15 23:05:13 +08:00
在 9 发布前, 提前把 angular20 学了
zhuangzhuang1988
2019-11-15 23:59:32 +08:00
都一样
起码 DI Module 要知道
参考下 Kibana 的代码 github 上有 angular.js + react 模式.
angular.js 做 module + di
Austaras
2019-11-16 01:02:20 +08:00
@hantsy 胡说八道
react 现在的源码还是 Flow,随便看看就知道的吧
https://github.com/facebook/react/blob/master/packages/react-dom/src/client/ReactDOM.js
react 的 TypeScript 支持并不在官方仓库里而在第三方
https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react
Austaras
2019-11-16 01:02:41 +08:00
@zhuangzhuang1988 我觉得这是非常恶劣的做法
susumail
2019-11-16 07:06:01 +08:00
建议不学
hantsy
2019-11-16 10:15:11 +08:00
@ddup ionic 团队的 Stencil 宣称可以做到更小,TodoApp 压缩到 2K。

https://dev.to/ionic/why-we-use-web-components-2c1i

没试过这东西,针对未来 WebComponets 开发的,语法上接近 Angular Component+React redener().
A2rael
2019-11-16 16:53:34 +08:00
亲,这边介意学 1.x 版本的呢
coloz
2019-12-17 19:52:56 +08:00
1 之后都大同小异,学最新的 release 就好,9 据说 ivy 十分牛逼。相对其他框架来说,angular 可能是最完善的,但也是最难学的。
另外,找工作学 vue,如果想做好项目,用 angular

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/620004

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX