我想學(xué)習(xí)軟件編程技術(shù)該怎么學(xué)呢?隨著眾多傳統(tǒng)工作面臨失業(yè)的風(fēng)險(xiǎn),編程成為21世紀(jì)必備技能,但是很多人卻抓不住重點(diǎn),導(dǎo)致耗時(shí)費(fèi)力,甚至無法入門。
初學(xué)編程都需要學(xué)什么?這幾根支柱一定要打牢!
1、基礎(chǔ)優(yōu)先
很多初學(xué)編程的人一上來就學(xué)習(xí)框架,這就好像是把人放在賽車上,教人如何開車。忽視了他們可能會(huì)把剎車錯(cuò)當(dāng)成油門的事實(shí)。
作為編程的初學(xué)者,首先需要了解的是編程的基礎(chǔ),在使用別人的代碼之前,需要熟悉基本要素和意義;A(chǔ)很重要,在學(xué)會(huì)基礎(chǔ)之前,不要貿(mào)然前進(jìn)。
2、測(cè)試驅(qū)動(dòng)開發(fā)
TDD帶來了很多好處,但這是一個(gè)高級(jí)主題,對(duì)初學(xué)者來說,可能有些艱難。初學(xué)者不應(yīng)該寫測(cè)試,相反的,他們應(yīng)該學(xué)習(xí)如何使用測(cè)試及如何配合測(cè)試。
每一門編程課程都需要大量練習(xí),進(jìn)行實(shí)踐。每當(dāng)你掌握一個(gè)模塊或功能之后,都要進(jìn)行重復(fù)練習(xí)。
3、庫(kù)和框架
當(dāng)你花費(fèi)了很多時(shí)間學(xué)習(xí)編程后,就可以了解庫(kù)和框架。
跟TDD類似,你應(yīng)該對(duì)庫(kù)秒殺Redux保持懷疑態(tài)度。一旦了解了庫(kù)的作用之后,對(duì)框架的重要性自然就能明白。
4、師徒關(guān)系
如果你對(duì)編程毫無經(jīng)驗(yàn),那自學(xué)就是一個(gè)非常不理智的行為。雖然有很多成功的故事,但是卻不得不考慮他們的效率。
在學(xué)習(xí)的時(shí)候,最好有一個(gè)師父,一開始師父自定的規(guī)則,你可能不太理解。其實(shí)這些內(nèi)化的規(guī)則會(huì)形成一道安全網(wǎng),如果你迷路了,能保證別人可以安全的帶你返回。
5、激勵(lì)與挑戰(zhàn)
師父對(duì)徒弟的激勵(lì)是非常重要的,同樣的,挑戰(zhàn)也必不可少。非程序員可能會(huì)對(duì)開發(fā)者每天寫的代碼行數(shù)至少感到驚訝,甚至有時(shí)候會(huì)刪除代碼,一天下來,又回到了原點(diǎn)。
在編程過程中,總會(huì)有各種狀況發(fā)生,比如花費(fèi)大量時(shí)間修復(fù)一些機(jī)器怪異的Bug,結(jié)果發(fā)現(xiàn)只是拼寫錯(cuò)誤。一些工具無法使用,可能僅僅是因?yàn)橐粋(gè)庫(kù)進(jìn)行了小型的版本升級(jí),或者因?yàn)橛腥送洶岩粋(gè)文件添加到git而導(dǎo)致系統(tǒng)崩潰。
生活不是每天都充滿陽(yáng)光,初學(xué)者需要做好準(zhǔn)備,但也要昂首闊步,抬頭挺胸,才能一路披荊斬棘,實(shí)現(xiàn)夢(mèng)想。