對於程序員, 爲何英語比數學更重要? 如何學習

做者 謝恩銘,轉載請註明出處。 公衆號「程序員聯盟」 原文:www.jianshu.com/p/0194b98df…前端


程序員聯盟羣裏常常有人問:git

  • 我數學很差能夠學編程嗎?
  • 我英語很差能夠學編程嗎?

今天就來一次性回答這兩個問題。程序員

事先聲明:我絕對沒有貶低數學對編程的重要性的意思github

數學知識對於編程是很關鍵的,好比數據結構和算法的學習就得有較好的數學基礎。好的數學思惟也頗有用。算法

這幾年火熱的 AI(人工智能)的學習更是離不開數學:機率論、微積分、線性代數,等等。編程

我這些年的體會是:英語對於編程的(優先)助力比數學要大。因此要說優先級的話,首先過了英語這關再說markdown

爲何這麼說呢?很簡單,有些編程不須要太多數學知識,可是英語倒是避無可避。數據結構

除非你是用易語言編程(不過說實話,中文真的不適合用來寫程序。英語的字母組成和特性決定了編程還真須要用英語),否則離不開英語。數據結構和算法

對編程來講,學好英語有如下必要性:編程語言

  1. 對編程語言裏的基本詞彙敏感,便於理解意思。不少函數和變量名都是自注釋的(也就是說光看名字就知道意思了),例如 isFinished() 函數,不懂英語的話就不知道是什麼意思,若是會英語立刻會知道是判斷「是否結束」的函數。不少 API 或源碼是沒有註釋的,由於函數名已經能夠達意了,但不會英語你就看不懂。

  2. 可以爲變量或函數起個好名字。命名能夠一大學問,名字起得好,一看便知,就是第 1 點中所說的自注釋了。若是英語很差。起了個有語法錯誤的名字,或者胡亂起一個名字,或者起一個拼音讀音的名字(好比 haoChiMa,簡直不能忍),對於閱讀你程序的人或者是你往後本身回看本身的程序,簡直慘不忍睹。

  3. 不少好的教程和書籍是英語的。雖然如今咱們偉大的祖國愈來愈發達,國人編程總體水平愈來愈高,也著有很是優秀的書籍,寫了很是優秀的博客等。可是,老外的思惟方式仍是跟咱們不太同樣,看老外的文章每每比同類的中文教程易懂。由於他們思惟跳躍,語言幽默、形象,看起來比較輕鬆愉快。不過,我愈來愈發現:好比我在搜索 Android 一個知識點時,Google 搜索的英文結果沒有滿意的答案,在中文的博客裏卻會找到答案。這說明我國已今非昔比了。

  4. 不少好的論壇,網站是英語的。例如最著名的 StackOverflow,Github,等等。在上面能夠用英語提問,回答;參與開源項目,撰寫文檔,等等。固然了,國內 CSDN 這樣的綜合編程社區也是很優秀的,可是通常來講新技術會第一時間用英語在國外網站發出來,例如 Android 的各類新聞,你想看中文版的話還須要等人翻譯,這就滯後了。

  5. 不少書籍,有中文翻譯版,可是很差理解,由於翻譯水平不行。因此要看原版的話只能會英語。不少編程書籍我都看英文原版。

  6. 不少軟件,沒有漢化,只能會英語。

我在以前的文章裏提過,我這些年很努力,幾乎天天都在學習。我是一個持續學習者,我以爲本身始終是很不足的,因此必須終生學習。

這些年進步比較快的一個很重要的緣由就是個人英語還不錯(固然了,比我英語好的人不少),英語好對編程真的幫助極大!

固然了,進步較快的另外一個緣由是我數學也不錯,幸好學生時代沒有偏科。


反觀數學:某些特定領域須要數學比較好。

  • 例如遊戲開發,3D 遊戲須要有座標系的轉換,重力,反彈,角度等計算,須要數學知識。

  • 嵌入式底層,位移,與、或、非等運算,二進制,十六進制,八進制和十進制的轉化和計算,須要數學知識。

  • 高科技或研究領域,好比航空信息工程,那數學要求很高。

  • 人工智能,算法研究領域,數學基礎也很是重要。

不過,這些編程領域,都離不開英語。

通常的編程,你說 Web 編程吧,若是是前端,通常不須要太多數學知識吧;作 Android 應用開發,也不必定須要數學多好。

固然了,若是你英語好,數學也好,那天然是:「強強聯手,天下我有」


那麼,如何學好英語呢?

首先,興趣是最好的老師。

若是你不以爲學英語是一件苦差事,反而饒有趣味,那麼你的進步會很快。

我就是這樣,學習外語對於我來講是頗有意思的事。

若是你對英語興趣不大,那能夠用下面的幾個方法:

1. 語法是主幹


很多人學外語,總以爲應該要學一些經常使用語,和老外打成一片,口語是很好啊,單詞量也有。可是假如知其然,不知其因此然的話,你是走不遠的。

學語法,就是「知其因此然」。

要真的學好一門外語,語法太關鍵了。語法是銅筋鐵骨,打紮實了,其餘的單詞,什麼的,慢慢裝飾不急。

之前個人初中課外英語老師就常常強調:「英語要打紮實語法」。因此我對語法一直不敢怠慢,後來發現,學其餘外語也特別快。只要先從語法入門,其餘都水到渠成。

2. 看到背後的益處


也許你會說:「什麼?學英語還有什麼益處?除了讓我不開心以外。」

是的,學英語固然大有益處。學外語,實際上是學其背後的文化。一門語言,表明了說這門語言的國家人羣的生活習慣,思惟方式,文化歷史,等等。

若是把學英語想成可以接觸英語文化,學習其歷史背景,人文藝術,高新科技的大好機會,那你學習就有了新的目標和動力了。

什麼?你仍是沒有動力?你,你給我出去... :P

3. 學腔調


學一門語言,其實很關鍵的一點是學腔調。什麼是學腔調呢?就是模仿,相似「鸚鵡學舌」。

你應該聽那些純正的外語者是怎麼發音的,他們說話用的是什麼腔調,你就跟着學,模仿就行了。他們怎麼待人接物,你也怎麼作;他們怎麼用這門語言,你也怎麼用。

由於語言不是乾巴巴的文曲星的發音,每種語言都有其特殊的腔調。這一點,說英國腔英語的人確定大有體會。

4. 不死背單詞


很多朋友學英語,拉起來就猛背單詞,我的以爲不是太有效。誠然,單詞對於語言來講很關鍵。假如沒有詞彙量,你語法再厲害,也是張口的「聾啞」人,不是嗎?聽也聽不懂,說也說不出來。

可是單詞怎麼才能記得牢,我的以爲用情景記憶法最佳:好比多和老外聊天,他們提到或糾正你的單詞,你會一直記得,基本都不會忘了,由於你把這個單詞和當時的情景聯繫在一塊兒了;看文章看電影記單詞,也是不錯的方法,這樣才能活記,也是利用情景記憶法。

5. 勇敢說出來


「瘋狂英語」等概念實際上是有其道理的。中國人通常都講求低調作人,要謙虛不張揚,隱忍不狂放,由於「槍打出頭鳥」。

可是不少外國的英語老師都會鼓勵咱們不要怕丟面子,就要大聲說出來。畢竟肚子裏再有墨水,不說就只能黑在肚子裏。

6. 看電影和唱歌


看電影和學唱英語歌曲是很好提升英語的技巧,可是這個是在掌握好語法的狀況下,否則跟不學語法只和老外聊天沒什麼區別。

看英語電影時,能夠用遮擋物遮住字幕部分,看幾遍電影,由於看中文字幕你是很難提升的。

學英語歌呢,能夠先本身把歌曲用中文翻譯出來,搞清楚意思了,再去背。

7. 多看書


不用說了,多看一些好書吧。像我這樣不能靠顏值的,就得更努力~


我是 謝恩銘,公衆號「程序員聯盟」號主,慕課網精英講師 Oscar 老師,終生學習者。 熱愛生活,喜歡游泳,略懂烹飪。 人生格言:「向着標杆直跑」

相關文章
相關標籤/搜索