前端是否有点卷?

2021-11-04 16:25:49 +08:00
 Features
应届生,入职某小厂,前端大概 15 人团队,lint 规则令人发指

1.比如禁止使用 for 遍历一个数组

2.缩进必须要两个空格,不能使用 tab

3.禁止使用字符串与变量进行 + 操作,必须使用``

4.禁止使用三目运算符

......

我觉得程序员也是一种创意工作吧?

现在搞得有点像写八股文

本来有些功能写起来就很费劲,好不容易想到一个办法

或者从 stackoverflow 找到答案,复制下来还不能直接用😂

搞得挺难受的

不知道大家怎么看严苛的 lint 规则的?
6264 次点击
所在节点    问与答
103 条回复
AoEiuV020
2021-11-04 16:40:15 +08:00
1234 感觉都没什么,普通的统一风格以及禁止一些没啥好处的炫技代码,
ztc
2021-11-04 16:49:47 +08:00
第 4 条为什么不能用?
AoEiuV020
2021-11-04 17:29:23 +08:00
@ztc #2 肯定是要求用 if else 呗,确实会有人觉得三目不直观,
h1104350235
2021-11-04 17:52:35 +08:00
没啥问题阿,我觉得有代码规范和约束是好事情。
gaoryrt
2021-11-04 17:53:13 +08:00
从我角度来看确实是为了团队着想
另,这几个 lint 也限制不了程序员发挥的,放宽心~
wunonglin
2021-11-04 17:59:09 +08:00
这个是团队规范,和你自个发挥创意是两回事,写出来的东西是给团队的人看的,每个人风格都不统一别人怎么接手你写的代码
pengtdyd
2021-11-04 18:00:09 +08:00
说个笑话:阿里的开源框架不遵守阿里出的 java 开发手册
rabbbit
2021-11-04 18:04:23 +08:00
for of 为啥不能用?
xiangyuecn
2021-11-04 18:04:41 +08:00
只要钱够多,再怎么不合理的要求都是毛毛雨啦。不然嘛,一边呆着去,否则上去就是一巴掌😂
rabbbit
2021-11-04 18:04:57 +08:00
是禁止用 for in 吧?
Hoshinokozo
2021-11-04 18:13:24 +08:00
感觉没啥问题,除了禁用三目稍微严苛了点,不过 3 目确实不如直接 if else 语义清晰
SuperManNoPain
2021-11-04 18:38:14 +08:00
前端还卷? 请你来我们 java 阵营看看😅
IvanLi127
2021-11-04 18:42:10 +08:00
2 和 3 没啥问题,4 还能理解,1 咋了?
yuhangch
2021-11-04 18:45:44 +08:00
同问一,那怎么遍历啊,foreach ,for in ,for of
cwp374240920
2021-11-04 18:50:49 +08:00
lint 规则,prettier 风格,跟卷不卷没有关系,一个项目中如果每个人都有自己的风格,都按照自己的创意来写代码,你写的代码别人也不想看,别人写的代码你也不想读,那跟屎山没什么区别。如果对于 lint 规则与风格有意见,可以提出来到组里面大家一起商议一下。
八股文一般指的是你前端 Vue 说说 computed 跟 watch 的区别,dom-diff 算法是怎么实现的,业务代码怎么也跟八股文沾不上边的。
StackOverflow 上面的答案,复制下来不能用,你是不是得看下别人移植过来的器官在你身体上是不是能完美运行,代码知道逻辑自己写应该会更好吧。

前端卷的定义是:下班时间到了,你跟你同事的活都干完了,但是还赖在公司假装没干完,对着电脑假惺惺的写代码;没有活干了,然后疯狂的写一些没有用的轮子来争取 kpi 。(以上只是举例子,请不要真的这么做。)

小厂还是比较自由的,跟组长关系处好了你想怎么玩都可以,前端最起码的写起代码来还是比后端要舒服自由很多的,后端代码是真的又臭又长。
cwp374240920
2021-11-04 18:51:23 +08:00
@yuhangch [].map/forEach ?
ifreego
2021-11-04 19:04:59 +08:00
for in 会遍历原型链上的 props ,可能会有一些奇怪的 bug

举个例子
const arr = ['a','b','c'];
const indexes = [];

Array.prototype.each = function() {/*blah*/};

for (var index in arr) {
indexes.push(index);
}

indexes; // ['0', '1', '2', 'each']
TomatoYuyuko
2021-11-04 19:08:30 +08:00
不让写三目是吧,劳资直接 a = b && 1 || 2 (狗头
molvqingtai
2021-11-04 19:17:26 +08:00
如果不是写算法,代码中从不用 for 循环,迭代函数写起来方便语意也更强,
learnshare
2021-11-04 19:21:41 +08:00
定 lint 和卷有啥关系,左舵右行影响了交通效率吗?
lint 必须要有,越细致越好,合作的人越多越能发挥价值。

lint 打的就是你:
>复制下来还不能直接用

lint 规则好不好,这个比较主观,不容易做评价。
但随意搬一个规则来用,甚至啪一下全部 prettier ,那肯定是不对的。

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

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

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

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

© 2021 V2EX