很多小伙伴在學(xué)習(xí)編程之前都會(huì)有各種各樣的問題。
非985211,可以學(xué)編程嗎?數(shù)學(xué)一直不好可以轉(zhuǎn)行IT嗎?學(xué)習(xí)編程語言,是不是對(duì)英語要求很高?
非名校,非計(jì)算機(jī)專業(yè)可以學(xué)編程嗎?
比爾蓋茨是學(xué)法律的,
扎克伯格是學(xué)心理學(xué)的,
Github的創(chuàng)始人Tom是學(xué)物理的。
以上都是名人的例子,其實(shí)我們身邊也有很多非本專業(yè)非茗校出身的程序員。但是不得不承認(rèn)一點(diǎn),計(jì)算機(jī)專業(yè)的學(xué)生,學(xué)歷越高越吃香。這也不代表雙非轉(zhuǎn)行的人無路可走,我們可以看一下《2020程序員人才大數(shù)據(jù)統(tǒng)查報(bào)告》。
《2020中國(guó)獨(dú)立開發(fā)者生存現(xiàn)狀調(diào)研報(bào)告》,本報(bào)告是對(duì)自由職業(yè)的調(diào)查。
獨(dú)立開發(fā)者的學(xué)歷呈現(xiàn)分布狀態(tài),并且通過調(diào)研采訪得知,獨(dú)立開發(fā)者需要很高的自學(xué)能力,相比于學(xué)歷,自學(xué)能力對(duì)獨(dú)立開發(fā)者更為重要。
數(shù)學(xué)不好可以轉(zhuǎn)行IT嗎?
數(shù)據(jù)基礎(chǔ)不好與邏輯思維是不能劃等號(hào)的。現(xiàn)在有很多4-16歲的少兒編程課程,還有12歲的孩子開始學(xué)Python。由此可見,邏輯分析能力勝過數(shù)學(xué)基礎(chǔ)。
離散數(shù)學(xué)對(duì)于編程來說很重要,包括常說到的邏輯關(guān)系(就是真真假假的邏輯),還有數(shù)據(jù)結(jié)構(gòu)這些都是用代碼形式表現(xiàn)出來的。我們可以看看《算法圖解》書中的對(duì)數(shù)學(xué)的要求:
但是不能否認(rèn)有一些特定類型的程序員會(huì)用到比較多的算法,比如做圖像處理的、科學(xué)計(jì)算、機(jī)器學(xué)習(xí)、加密解密的。但是大部分的開發(fā)都用不到,即使用到,也是別人封裝好的我們拿過來調(diào)用。
綜上,如果你想做圖像處理、游戲引擎、GUI引擎、科學(xué)計(jì)算、人工智能等類的開發(fā),是需要有一定數(shù)學(xué)基礎(chǔ)的,除去以上內(nèi)容數(shù)學(xué)均不影響工作。
學(xué)IT對(duì)英語要求很高?
其實(shí)對(duì)于初學(xué)者完全不必?fù)?dān)心這個(gè)問題,一般用到的應(yīng)用開發(fā)并不需要多好的英語水平。因?yàn)楝F(xiàn)在程序的開發(fā)環(huán)境非常好,基本打開后不需要怎么配置就可以寫代碼了。
我們真正轉(zhuǎn)行成功入職后就會(huì)發(fā)現(xiàn),在別人指導(dǎo)下完成工作,因?yàn)橐?guī)模不到,軟件也不是很新的模塊,初高中英文水平足夠了,并且還有那么多的中文資料。
但是英語好是會(huì)對(duì)我們未來晉升有一定幫助的??梢苑瓑磭?guó)外的技術(shù)動(dòng)態(tài),學(xué)習(xí)新技術(shù)。