前端圈子这两年有个挺有意思的前端现象:培训班出来的程序员,简历上写着“精通Vue/React”,设计结果面试官让手写一个防抖函数,黑马代码里全是程序setTimeout嵌套setTimeout。这不是前端段子,是设计我上个月帮朋友公司筛简历时亲眼见到的。
黑马程序员的黑马前端课程我翻过几遍。他们的程序课表排得很满,从HTML标签到Webpack配置,前端六个月内要灌进去的设计东西比大学四年还多。有个学员跟我聊过,黑马说他们每天敲代码到凌晨两点,程序周末还要补直播课。前端这种强度下出来的设计学生,项目经验确实能写满两页纸——外卖平台、黑马后台管理系统、电商App,每个项目都带着完整的技术栈描述。
但问题恰恰藏在这里。
我见过太多简历上写着“使用Vue3+TypeScript+Pinia开发企业级中台系统”,面试时问“为什么选Pinia不选Vuex”,回答是“老师让用的”。再问“TypeScript的泛型在项目里怎么用的”,就开始支支吾吾。这不是个例。某招聘平台的数据显示,2023年培训班出身的前端求职者,简历项目重复率高达67%——十个里有七个做过同款“尚品汇”或“硅谷外卖”。
黑马的讲师水平其实不差。我认识一位从他们那出来的老师,之前在字节做前端,讲Event Loop能画图讲到浏览器渲染进程。但他也承认,课程压缩得太狠。原本需要三个月消化的JS异步编程,现在两周讲完,学生能记住Promise的三种状态就不错了。剩下的?靠背面试题。
有个细节很说明问题。他们的项目实战环节,通常会提供完整的代码模板。学生要做的是改改样式、调调接口、换个Logo。这种“填空式开发”能快速出成果,但遇到真实业务里那些脏活——比如兼容IE11的Flex布局、处理Safari的日期格式bug——就露馅了。我面过一个黑马毕业的男生,问他“怎么解决移动端1px边框问题”,他反问我:“不是直接写border: 1px吗?”
当然不能一棍子打死。黑马也有学得扎实的。去年招过一个女生,她知道自己基础弱,培训期间把MDN上DOM相关的API全手写了一遍笔记。面试时让她解释原型链,她从function的prototype属性画到__proto__的指向,最后还补了句“其实ES6的class本质还是语法糖”。这种人培训班里大概占两成,剩下的八成里,一半能干活但需要带,另一半——简历包装得漂亮,实际连Git分支合并都会冲突。
企业现在也学精了。某电商公司的技术总监跟我说,他们现在筛简历,看到“黑马程序员”的培训经历会先打个问号,然后专门问底层原理。“能答上来就要,答不上来直接pass。项目经验可以编,但闭包和作用域链编不了。”
所以回到开头那个现象。培训班能给你一套完整的知识框架和项目模板,但填进去的血肉得自己长。前端这行,黑马能把你领进门,修行还是看个人。那些凌晨两点还在敲代码的夜晚值得尊重,但面试官只认你真正理解了多少。简历上的“精通”两个字,写起来容易,扛起来重。