編程入門指南:零基礎(chǔ)如何自學(xué)編程?
注明一下:本文適用于零基礎(chǔ),想自學(xué)編程的伙伴,重點(diǎn)在于盤清底層邏輯以及整理一些學(xué)習(xí)途徑。
編程學(xué)習(xí)如何入門?
第一步:做好心理建設(shè)
首先要告訴你一個壞消息:自學(xué)編程的彎路多得數(shù)不完,坑多得踩不完:
編程環(huán)境、各種定義概念、格式規(guī)則、缺點(diǎn)優(yōu)點(diǎn)、語法邏輯、運(yùn)行BUG、舊教程難以適配新技術(shù)......這些都是編程學(xué)習(xí)中繞不開的坎兒。
所以說,首先要想清楚自己能不能承受這些挫折,自己能不能堅(jiān)持走到最后。
如果你沒有一顆能戰(zhàn)勝這些困難的決心和勇氣,建議還是盡早放棄,免得心灰意冷,身負(fù)重傷。
第二步:選定學(xué)習(xí)方向
編程的種類非常繁多, 如果從編程語言上分,一般分兩種:
一種是高級語言編程,如C++,VB、VF等
另外一種是機(jī)器語言編程,如匯編編程等
從高級編程語言的種類上分的話就多了,有VB、VF、VC、Java等。若真要細(xì)分,我一時半會兒說不全,你也記不清。
最好是根據(jù)自己的興趣,結(jié)合市場前景先選定一個方向,再選擇一門語言。否則就是像猴子掰苞米,不僅浪費(fèi)了時間,還會一無所獲。
第三步:制定學(xué)習(xí)計(jì)劃
選定了方向之后,就不要再輕易變動了,因?yàn)榫幊痰恼w學(xué)習(xí)成本還是比較高的,所以一頭扎進(jìn)去學(xué)就對了。
自學(xué)的過程是枯燥乏味而且痛苦的,所以要想有一定成果,清晰明確的規(guī)劃是必不可少的。根據(jù)選定的方向和平時的空余時間定制計(jì)劃即可,沒有什么模板。
不過個人不推薦一上來就直接啃書籍,這樣很容易放棄,建議先去看看大神的一些作品、基礎(chǔ)的入門視頻、網(wǎng)站等等。
剛開始學(xué)習(xí)不要想著把所有的知識都學(xué)到,開發(fā)練習(xí)的時候再根據(jù)自己要實(shí)現(xiàn)什么功能,去查相關(guān)的資料。
第四步:培養(yǎng)好的學(xué)習(xí)方式
學(xué)習(xí)方式方面,切忌:不要用學(xué)生思維去學(xué)習(xí)編程,而要去用開發(fā)者思維學(xué)習(xí)。
01 費(fèi)曼技巧
費(fèi)曼技巧是學(xué)習(xí)編程能力必須掌握的一個方法。
簡單來說就是“以教促學(xué)”,每當(dāng)你認(rèn)為學(xué)會或掌握一個技巧后,嘗試去給“別人”講明白,以這種方式去檢驗(yàn)自己的學(xué)習(xí)成果。
以此作為參考,編程的學(xué)習(xí)也是可以分為3個環(huán)節(jié):
學(xué):學(xué)習(xí)模仿優(yōu)秀的項(xiàng)目,閱讀優(yōu)秀的源碼
練:練習(xí),找demo、小型項(xiàng)目、開源項(xiàng)目,大量重復(fù)的敲代碼
教:通過寫教程或者視頻的方式給其他人講明白一個項(xiàng)目
02 多去解決困惑和謎題
有意識的去尋找難題并嘗試去解決,它能刺激大腦并保持頭腦的運(yùn)轉(zhuǎn)。當(dāng)同樣的問題再次出現(xiàn)時,在哪里可以找到解決這些困惑的方法? 下面是一些資源:
Sphere online judge
Uva online judge
Project Euler
Top coder
Python challenge
Code kata
03 加入行業(yè)論壇&社區(qū)
只有進(jìn)入行業(yè)圈子與其他人交流,你才了解最新的行業(yè)動態(tài),才知道自己需要更新哪些技能,遇到問題時也能請教大佬,比自己琢磨快多了。stack overflow
gitHub:面向開源及私有軟件項(xiàng)目的托管平臺,強(qiáng)烈建議大家沒事多逛逛,閱讀一些優(yōu)秀工程師編寫的源碼。
stack overflow:全球最活躍的程序員技術(shù)問答交流社區(qū),也是內(nèi)容最豐富的社區(qū)之一。
reddit:用戶粘性比較強(qiáng)的開放社區(qū),編程開發(fā)板塊只是其中的一小部分,可以討論一些編程開發(fā)的問題和當(dāng)前的 IT 熱點(diǎn)資訊。
SourceForge:世界上最大的開源軟件開發(fā)網(wǎng)站,擁有大量非常優(yōu)秀的開源軟件。
04盡可能地多做練習(xí)
練習(xí)什么?社會媒體是實(shí)踐的一個重要來源:
加入一些群組和論壇,幫新手程序員解決問題
幾乎每本書都有很多經(jīng)典的案例,不要跳過章節(jié)練習(xí)
留意實(shí)際運(yùn)用中的問題并且嘗試解決掉。
05 認(rèn)認(rèn)真真敲代碼
認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼認(rèn)認(rèn)真真敲代碼。
編程沒有捷徑,只有勤奮努力。
以上。