上司不允许使用 es6 新特性理由是他看不懂

2021-06-04 08:31:32 +08:00
 kensoz

请问是我道行不够还是上司跟不上潮流?

入职不久的前端开发,最近参与一个模块的调整作业,模块本身多人接手过所以 es5 es6 都有。 用 es6 的 filter 方法处理了几个 api 接收的数据, 完后 codereview,上司说不行非让我用 for 循环写,理由如下

1.他看不懂,原因是他虽然也懂前端但是主要负责后端,原话:java 里没有 filter 2.他看不懂就没法排错,万一写错他不知道哪错了 3.新特性不够稳定,兼容性有问题,显然他不懂 bable 4.万一我休息遇到 bug,for 他会改 5.for 也罢 filter 也罢最后都能用,为什么不用大家都懂的

虽然我给他普及了相关知识,可还是被无情拒绝。 当时我是很生气的,这明明就是 js 基础了,2021 年还有这种人? 不过事后一想,上司的做法不能说全错,毕竟他是要对项目负责的,稳是第一位。

公司还行,但是没有干长的打算 如此别说是参与内卷了,不仅啥都学不到,技术退步肯定是必然的。 请问各位遇到这种事情会怎么办?

28515 次点击
所在节点    程序员
308 条回复
3dwelcome
2021-06-04 09:39:59 +08:00
@TomVista "我最近在把项目中的 flex 布局全部替换掉"

不用怀疑浏览器的实现。90%可能性,是你们 flex 代码里有 BUG 。

你可以找个很古老的 chrome 内核作为开发平台,新浏览器对代码的容错率,实在是太高了。
zhangbaoliang
2021-06-04 09:40:02 +08:00
你上司说的是放屁。但是我认为 for 比 filter 维护性好很多,代码也简单。很多语法糖其实没啥用还增加了系统的复杂度。
wangwei1025
2021-06-04 09:41:06 +08:00
我要用这个,我要用那个,这样提升自己技术 ,以后跳槽方便。
Obrigado0815
2021-06-04 09:42:22 +08:00
跑路吧
mastcer
2021-06-04 09:42:24 +08:00
告诉他 java 有个东西叫 streamAPI
ian19znj
2021-06-04 09:42:27 +08:00
我来拉仇恨了,前端就是最没技术含量的,正因为这样,所以他们才需要折腾新框架新语法来显得自己多牛逼。
程序员重要的是抽象逻辑思维,而不是你用 for 还是 filter,为了这点破事吵,只能说明你太闲了,或者说你就真的只是个美工。
nasmatic
2021-06-04 09:47:20 +08:00
上司说的一点问题都没有,你都准备跑路了,留下一堆他不懂的 es6 。要是听了你的,你跑路了,下次在招个说要全改成 wasm 再干到一半跑路,那还玩个屁
hewelzei
2021-06-04 09:47:39 +08:00
@ian19znj 好笑,filter 严格意义来说不是循环,是递归。为什么前端不推荐 for,因为现在前端流行函数式编程,函数式编程要尽量避免副作用,所以函数式编程里没有 for 循环而用递归替代。你说的抽象逻辑思维,难道函数式不够抽象吗?
lei2j
2021-06-04 09:48:34 +08:00
Java 里没有 filter?领导连 Stream 都没用过吗
meteor957
2021-06-04 09:48:35 +08:00
lz 小心了,可能要得罪一些人,他们听这话心理不舒服。
xinyu0
2021-06-04 09:49:06 +08:00
兄弟,filter 是 es5 的数组方法,已经好多年了,,,,
duan602728596
2021-06-04 09:49:38 +08:00
我其实不太喜欢用 es5 、es6 这个说法来区分新 js 语法和旧 js 语法,js 就是 js,所谓的 es6 、es2018 、es2020 都已经进入标准了,那么它就是白纸黑字清清楚楚写着的 ECMAScript 标准。也就是说写 var a = 5; 也是 js ; for await (const item of list) {} 也是 js 。

前端不纠结语法是因为有 babel 、core-js 这两个利器,它极大大大大大的减少了开发的负担,不用关心语法的兼容问题。下能兼容 ie7,上能跑到 chrome91,跨越几十个版本。
haaro
2021-06-04 09:49:48 +08:00
Java Stream:???
feeeff
2021-06-04 09:49:57 +08:00
@antiquezzz 是正解 与技术无关
zw1one
2021-06-04 09:50:40 +08:00
对上司来说,实现的功能都一样,为什么不用更稳妥的办法。用新特性除了方便你跑路以外对他只有坏处没有好处。
所以,快准备跑路,业务导向的公司都是这样的。
TomVista
2021-06-04 09:51:23 +08:00
@3dwelcome 额,是全平台一套样式,全部的小程序,web,以及不知道要不要上的 rn 和快应用,潜在的 web 套壳 app,所以我认为上帝来了也搞不清楚 flex 到底哪里出了问题 ,
undefine2020
2021-06-04 09:51:31 +08:00
我还碰到过不让用 redis 的,理由是 mysql 也可以实现队列为什么要用 redis
fulvaz
2021-06-04 09:51:36 +08:00
@murmur 这就很偏见了~

有一说一, filter 写出来的是无副作用代码, 读起来比 for 舒服多了. 现在看到 for 就皱眉. 意味着要理解对外部状态的处理, 还要考虑这几个状态还会被谁给改了.
ayang11
2021-06-04 09:52:06 +08:00
java 里有 filter 方法!!!
yunyuyuan
2021-06-04 09:52:17 +08:00
我一般单行简单操作用 filter,别的还是用 for,看起来易懂些

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

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

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

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

© 2021 V2EX