周末漫谈程序员的英语学习
作为在中国工作的程序员,不懂得英语似乎也不妨碍找到好工作,升职加薪。但大的方面来说,程序员这个工种则稍有不同,因为程序,尤其是高级语言,基本上都是由英语和数字表达式构成的。英语对于程序员十分重要。我的大学本科全部采用英文教学,工作时也经常会遇到外国人,和他们谈笑风生,自认为自己的英语水平比园子(博客园)的平均水平高一点。下面我就根据自己的经验来说说英语的学习方法。
为什么要学习英语
学好英语你可以直接阅读各种经典书籍的原文版。程序员这个行业之所以特殊,就是因为它所有的技术全部来自欧美,所以最主流, 鲜,最正确的技术文章都是英文,大部分还没有译本,有些译文还比较差。与其等待别人的翻译,不如直接阅读原文。
学好英语你可以直接观看来自世界最 学校的上课程或编程高手的教学视频。较之汉语教学视频,不知道高到哪里去了,而这些视频通常都没有任何翻译可寻。
学好英语你可以和世界各地的程序员在Stackovrflow,Rddit和Github进行交流,以码会友。如果你不小心搭上了几个哥们,你可能就误打误撞被他们推荐出国工作了。作为工作多年的老鸟,大家自然知道内推的好使程度,要是拿到了公司的录取,那么什么签证都是浮云。
学好英语,你的代码中变量的命名不会太差,让人摸不着头脑(甚至有人变量使用汉语拼音进行命名)。假设别人写一个方法演示反射的使用,你看到那方法名不是RflctionDmo,甚至不是ShowRflction,而是FanShYanShi时,你什么心情?
学好英语也可以为你的前途打开一扇门,你可以考虑到大陆以外工作生活,领略不同于神州大地的风土人情,感受西方文化,甚至中西合璧,建立一个与众不同的家庭。即使你留在大陆,英语好至少也会让你胜任一些外事工作,能人所不能,这对外企员工来说十分重要,你的上级会高看你一眼,你谈工资时筹码比别人多。
什么水平算是英语比较好了
如果你觉得你满足以下这些条件,那我觉得你在英语为母语的国家也可以活得挺滋润的,找到一个码农的工作应该是没什么问题。当然,医院、街头篮球场、酒吧这种需要高难度英语对话的地方。不过如果仅仅应付工作,你不需要刻意的提高自己的英语水平了,只需要保持即可。
裸考(故意不准备)托福+,雅思7+,口语的成绩不是其中 的;
词汇量达到以上;
能够应付30分钟左右的全英文面试,且你在面试过程中说话的比例占至少三分之一,而不是人家说20句你说一句;
阅读一般的技术文章(例如MSDN文档)和技术书籍没有太大障碍,具体来说,生词频率在1/之下(即任选文章中的个连续单词,平均只有一个不认识)
可以使用英文mail和公司的外国人交流
可以和老外聊些简单家常或你比较熟悉的话题,支撑至少15分钟
关于单词与阅读
学英语不背单词是不行的,背单词是 步,只有认识了单词,你才能看懂它,听懂它, 在口语中运用。如果仅仅为了应付工作,则很多词并不需要背。
例如,下面这个图中的所有单词你都不需要知道(可能第15个需要吧,但你多半应该认识),这丝毫不会影响你阅读技术书籍的速度。基本来说,你只需要知道MSDN,牛人博客里面出现的比较高频的单词,以及你工作中需要用到的概念对应的英文翻译。
对于初学者而言,不需要阅读其他乱七八糟的小说散文,也不用把新概念看一遍,最重要的就是把你的主力语言中各种术语的维基百科都看一遍,新概念不会告诉你控制反转的英文是IOC,pumasarlargcat-likanimalswhicharfoundinAmrica(新概念第三册的 句话)只能让老美觉得你脑子有问题。(这课是讲从句的,所以几乎所有的句子都是从句)背新概念还不如背技术文档,对于C#,直接看MSDN就行了。
各种MSDN文档中的单词重复频率很高,读多了就会越读越快的。你可以把不会的单词记在本子上,而不是买本托福词汇开始背。过了不久你就会发现,技术文档里面转来转去就那几百个词,可能都没有个,而一本托福词汇背完了,你还是不知道进程和线程怎么说。如果你对MSDN文档已经可以做到基本不查字典,你可以尝试改用谷歌搜索了。例如,如果你拿不准链表应该在什么时候使用,性能如何,你可以搜索stackovrflowlinkdlistprformanc/linkdlistprformanc
南京白癜风医院北京白癜风治疗好医院