不会写 babel 或 webpack 插件,能算高级资深前端吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
nito
V2EX    程序员

不会写 babel 或 webpack 插件,能算高级资深前端吗?

  nito 2019-01-08 09:41:33 +08:00 via Android 4855 次点击
这是一个创建于 2470 天前的主题,其中的信息可能已经有所发展或是发生改变。

babel,使用 antd 的都会用到 babel-plugin-import 插件,尝试去看源码,结果没学过编译原理,AST,完全看不懂。

webpack,一直停留在会配置的使用程度上,也没深入理解 loader 或 plugin 的机制。

虽然不影响实际开发,但高级的前端需要会这些知识点吗?

34 条回复    2020-01-29 13:43:42 +08:00
ericls
    1
ericls  
   2019-01-08 09:53:49 +08:00 via iPhone
不需要 这属于编译器的知识
Bantes
    2
Bantes  
   2019-01-08 09:54:30 +08:00
个人觉得会使用就可以了吧
wu67
    3
wu67  
   2019-01-08 09:57:19 +08:00
我觉得会用就行了, 现在这些张口闭口精通 webpack 从 0 开始配置的, 我都不知道他们到底是前端开发工程师还是 webpack 配置工程师
CrispElite
    4
CrispElite  
   2019-01-08 10:04:25 +08:00
我觉得 如果你会这些,面试的时候可以是加分项,平时在公司也可以吹吹。不会也没关系,毕竟平时工作基本上都有现成的插件或者方案
murmur
    5
murmur  
   2019-01-08 10:08:14 +08:00
会抄现有的配置就行了
别说从 0 开始配置了
跨 1 个版本改配置都要死人
jera
    6
jera  
   2019-01-08 10:15:12 +08:00
无非是掉接口,就算 string 转 ast 也应该有现成的,实在不行 raw loader 总会写吧
int64ago
    7
int64ago  
   2019-01-08 10:16:11 +08:00
你怕是对编译原理有什么误解
hasbug
    8
hasbug  
   2019-01-08 10:16:53 +08:00
会用 看懂配置就够了
azh7138m
    9
azh7138m  
   2019-01-08 10:27:40 +08:00 via Android
@murmur 问题不大,webpack1 升 4 也就用了一天
jin5354
    10
jin5354  
   2019-01-08 10:28:01 +08:00
都是很简单的东西,只是写插件看看文档就会了,谈不上什么资深。
ast parser 都是现成的拿来用而已,parser 才是研究点,可以试着手写个 html parser
litpen
    11
litpen  
   2019-01-08 10:31:03 +08:00
我只写过一个监听 HtmlWebpackPlugin 编译时改 html 内容的插件,解决了实际开发中的某个痛点,虽然不是必须的,但是可以解锁更多姿势
LWXYFER
    12
LWXYFER  
   2019-01-08 10:35:07 +08:00
只是面向 API 编程而已,没有什么大不了的。
xkv2
    13
xkv2  
   2019-01-08 10:36:37 +08:00 via Android   3
如果你是一线码农,每天有写不完的业务代码,加不完的班,以及打不过的产品经理 那你会用这些工具就行,虽然不能早下班,但是可以提升编程幸福指数。
如果你是管理层或架构之类的,为了 KPI 啥坑都敢挖的那种,对不起,你不光要吃透这些玩意的深层原理,还要造个类似的轮子大肆推广,获得升职加薪的机会,然后弃坑,再顺手给接盘侠留个彩蛋
otakustay
    14
otakustay  
   2019-01-08 10:45:32 +08:00
资深工程师的要求是有问题就拿得起,你现在不会没关系,但要知道什么情况下 babel 插件和 webpack 插件是达到目的的最佳手段,并且在需要的时候能够研究 1-2 天学会编写插件并实现自己需要的东西
前者做不到的话,止步高级;后者做不到的话,止步初级吧
kcats
    15
kcats  
   2019-01-08 10:47:41 +08:00 via Android
这些东西看文档一两天就会了
yikyo
    16
yikyo  
   2019-01-08 10:50:00 +08:00
@kcats 写插件跟写配置是两回事。
yikyo
    17
yikyo  
   2019-01-08 10:50:36 +08:00
@otakustay 这。。不会写 Webpack 插件就是初级前端了??
yimity
    18
yimity  
   2019-01-08 11:45:55 +08:00
还没用过的咋办。
hilbertz
    19
hilbertz  
   2019-01-08 11:51:07 +08:00
不会美工的前端,不是高级前端
66beta
    20
66beta  
   2019-01-08 11:57:50 +08:00 via Android
初级前端路过
otakustay
    21
otakustay  
   2019-01-08 12:03:23 +08:00
@yikyo 1-2 天研究不出来怎么写,我觉得还是当个初级就行了吧,学习和探索能力是高级工程师应该具备的基础能力
momocraft
    22
momocraft  
   2019-01-08 12:08:01 +08:00
知道是第一步,人不知道自己不知道的东西能干什么

知道了才有可能需要时能想到相应的方案,想到了才有可能做出来

当然不知道也不会怎样,很多人都不知道
learnshare
    23
learnshare  
   2019-01-08 12:11:55 +08:00
有学习和模仿的能力即可
重要的是解决问题,而不是精通工具
hellowes
    24
hellowes  
   2019-01-08 12:13:34 +08:00
不需要,前端又不是搞编译器的,你应该专注于 JS 逻辑方面的,webpack 用到再上网查就行了
VDimos
    25
VDimos  
   2019-01-08 12:14:15 +08:00 via Android
ast 可以了解一下的
hellowes
    26
hellowes  
   2019-01-08 12:20:04 +08:00
很无语现在很多公司,明明就是一个扭螺丝的活,给的钱也不多,非要加上什么大前端,数据渲染,什么数据流的概念。其实也就 CRUD,都没什么实际的高性能要求,还要考这个那个冷门的 API,还要你会 webpack 配置,这些上网一查不就都知道了么,只能说有些小公司的面试官很喜欢表现出 API 操作工熟练的优越感。

我三四年前还看过 gulp、grunt 的源码,去学习了 requireJS,commonJS 的模块化,自己还写了很多前端构建插件。结果过了才不到一两年,这些花时间精力的经验积累,都被前端自己的 gm 都颠覆了。估计明年又有一个前度框架+配置工具,毕竟大部分前端都不喜欢升级别人的已有的库,喜欢自己从头开始撸一套,然后慢慢重新开始搞生态(毕竟要让自己有领头羊的感觉,而不是大家一起把某件事情做到极致)。
yyfearth
    27
yyfearth  
   2019-01-08 12:26:59 +08:00
@hellowes 其实不完全是这样 主要有原因我觉得还有浏览器进化 ES 语言的快速迭代 和 NodeJS 的推动
等 WASM 普及后 估计又是一场风暴
wengjin456123
    28
wengjin456123  
   2019-01-08 12:47:14 +08:00 via Android
个人觉得会用就行
MrYELiex
    29
MrYELiex  
   2019-01-08 13:24:29 +08:00
你可以现在不会 但是作为高级资深 需要你会的时候你能随时拿起
littlebaozi
    30
littlebaozi  
   2019-01-08 13:42:45 +08:00
工具这种东西,会用就行了吧
yhxx
    31
yhxx  
   2019-01-08 14:01:08 +08:00
@hellowes 那该问点什么呢,问 HTTP 和数据结构一样被人说造火箭啊
hellowes
    32
hellowes  
   2019-01-08 14:07:13 +08:00   1
@yhxx 问点 Javascript 的语句作用域、HTTP 协议各个方法首部问一遍,数据结构 JS 怎么实现,写些常见的算法题。这都比问 webpack 某个配置的值是什么来的实在,如果只问这种 API 性质的问题,我觉得面试官的水平也就那样了
kcats
    33
kcats  
   2019-01-08 20:21:39 +08:00
@yikyo 没什么本质区别
jruit
    34
jruit  
   2020-01-29 13:43:42 +08:00
可以看一下 Babel 教程 https://www.jiangruitao.com/docs/babel/
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5893 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 27ms UTC 03:20 PVG 11:20 LAX 20:20 JFK 23:20
Do have faith in what you're doing.
ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86