在知识星球有一位录友问了我这么一个问题。
这个问题我曾经在上学的时候也思考过。
这次正好来好好说一说。
当时我搞ACM的时候都是英文题目的,哪会有中文题目,现在力扣全面汉化也是最近几年的事情。
如今又工作了这么多年后重新看待这个问题,又有更全面的看法了。
其实我想说,对英语对程序员即重要,也不重要! 这是要看环境,看背景的。
如果你现在在准备秋招,或者是跳槽,目标是冲刺国内大厂,那么暂时不用花费精力学英语,就算四级都没过,大厂面试官也不会问你过没过四六级的。
貌似华为对英语四六级是有要求的,如果面试BAT,英语不是关键性问题。
但工作之后,英语其实就很重要了,也要注意程序员英语和普通英语是不一样的。
一手的技术资料,和优秀的问答 基本都是英文的,国内的资料都是别人嚼过的,质量参差不齐。
而且国内的问答社区其实环境并不好(懂的人都懂),真正解决问题,还得靠Stack Overflow。
所以技术文档(英文),Stack Overflow , Quora才是程序员的利器。
工作以后如果你把程序员英语(注意不是普通英语)练好,其实对技能和视野的提升是很有帮助的。
这里为什么强调是程序员英语呢, 因为有太多专业词是CS特有的,而不是日常英语。
继承,多态,变量,英文怎么说? 估计可以难住不少人了。
所以当我们查问题的时候,第一反应 一定是用 中文关键词去搜索,因为我们不知道对应的英文关键词(也懒的去查一下)。
所以英语好,这是一种技术壁垒,可以任意遨游在中文和英文的世界里,有两极的思考!
那么对程序员来说,英语口语重要么?
如果你直接想去外企的话,练一练吧,也是挺重要的,如果在国内的话,用处不太大。
那一定有人说了:练好口语 一定是有利的。
这个我也 赞同,练啥其实都有有利的,但我们要看投入产出比
我在学校的时候英语口语还是挺不错的,当时学校的留学生我基本都认识,和他们扯扯皮没问题,可工作这些年之后,全!都!还!回!去!了!
所以如果练习口语,一定要有目标,要么就是雅思托付考试要出国,要么就一定要去外企找机会transfer美帝,这样有一个环境可以一直保持下去。
否则,花费大量时间练习,其实仅仅是感动自己,过不了多久,就都还回去。(例如说我,哈哈哈哈)