程序員學(xué)習(xí)一門新語(yǔ)言的二三事
可能大家會(huì)說(shuō)為什么不拒絕呢?原因有兩點(diǎn):
一、他是我的好朋友,我不能不幫他,如果不幫他,可能會(huì)失去這份工作。我希望通過(guò)我的幫助他能逐漸的適應(yīng)軟件行業(yè)并成為一個(gè)優(yōu)秀的程序員,乃至一個(gè)合格的設(shè)計(jì)師。
二、他初入軟件行業(yè),是需要有個(gè)人幫助的,如果所有問(wèn)題都沒(méi)人解答,那他的事業(yè)也將會(huì)被廢掉,畢竟他們是小公司,沒(méi)人幫他解答東西(我曾經(jīng)勸過(guò)他換公司無(wú)果)。
好了,言歸正傳,我說(shuō)了這么多只是想說(shuō)一個(gè)初出茅廬的程序員是需要更多幫助的。
對(duì)于他的問(wèn)題,我昨晚幫他做了分析,其實(shí)無(wú)非是語(yǔ)言不熟悉造成的,對(duì) JAVA 語(yǔ)法不熟,對(duì) jQuery 不熟悉,那么如何學(xué)好一門新語(yǔ)言呢?我跟他講了幾點(diǎn),都是我的個(gè)人意見(jiàn),未必適合每個(gè)人,但是我希望他去嘗試一下,畢竟這個(gè)是有利無(wú)弊的!
那么如何學(xué)習(xí)一門語(yǔ)言呢?我的經(jīng)驗(yàn)是要從以下幾點(diǎn)入手:
1、心態(tài)要積極開(kāi)放
首先學(xué)習(xí)一門新語(yǔ)言,要有良好的心態(tài),一個(gè)人見(jiàn)到一種語(yǔ)言的語(yǔ)法,就覺(jué)得這個(gè)好難懂,不好學(xué),這樣的心態(tài)是不行的。首先不能懼怕,而是要擁抱它,接受它。試想,當(dāng)你把大門緊鎖的時(shí)候,又怎么能讓經(jīng)濟(jì)流通呢?學(xué)習(xí)新東西也是這個(gè)道理,先不要抗拒!要擁抱新事物。
2、善用 API 文檔
這個(gè)朋友很多地方不知道怎么處理,例如 String 的包含,開(kāi)始于,結(jié)束于都不清楚,那自然不能處理一些復(fù)雜的東西了,jQuery 也一樣,大概知道怎么用是不行的。這個(gè)時(shí)候就體現(xiàn)出了 API 的重要性。當(dāng)我指導(dǎo)他寫代碼的時(shí)候,我問(wèn)他,你電腦里有 java doc 嗎?jQuery 的 API 文檔有嗎?我聽(tīng)到的都是否定,沒(méi)有!其實(shí)我個(gè)人認(rèn)為 API 是必須要有的,縱使你腦袋再清楚也不可能把所有方法都記得吧!要學(xué)會(huì)查閱 API,善于 API 文檔,這樣才能讓你更加熟練。
3、勤于練習(xí)、做 DEMO、記筆記
編程這個(gè)東西,沒(méi)有捷徑,只能靠自己的練習(xí)。我勸我的朋友,要多練習(xí),不要以為這個(gè)任務(wù)找人完成了就結(jié)束了,要問(wèn)問(wèn)自己,自己學(xué)到了什么。自己對(duì)這些知識(shí)點(diǎn)懂了嗎?自己盲區(qū)自己再回去練習(xí),把自己練習(xí)的成果記錄成筆記,這樣會(huì)讓你建立起自己的知識(shí)庫(kù)。保存你做的 demo,總有一天,你會(huì)發(fā)現(xiàn),這些 DEMO 是你的財(cái)富!
4、成果
學(xué)過(guò)的東西不能光練習(xí)就行,要用到你的工作中,將學(xué)到的用到你的項(xiàng)目中,用到你的產(chǎn)品中,學(xué)以致用,只有通過(guò)實(shí)踐,你才會(huì)真正的理解你所學(xué)的。
5、多看開(kāi)源代碼,學(xué)習(xí)別人的優(yōu)點(diǎn)
相信很多人都在用 SSH 框架,但是基本都停留在會(huì)用的基礎(chǔ)上,原理也只是理論上的知道,那么又誰(shuí)去研究過(guò)他的設(shè)計(jì)思想呢?又有多少人去研究了他的源代碼呢?其實(shí)如果找不到很好的開(kāi)源代碼,建議看下 JDK 的源代碼,我覺(jué)得就很不錯(cuò),或者研究下框架的源代碼,只要能堅(jiān)持下去,過(guò)一段時(shí)間,你會(huì)發(fā)現(xiàn)自己有質(zhì)的飛躍。(推薦閱讀:《閱讀優(yōu)秀代碼是提高開(kāi)發(fā)人員修為的一種捷徑》)
6、多加入一些社區(qū)
這個(gè)時(shí)代是互聯(lián)網(wǎng)的時(shí)代,你學(xué) jQuery 的話,很多知識(shí)可以到 jQuery 的知識(shí)社區(qū)去提問(wèn),去尋找答案,去看看別人做的東西。用來(lái)擴(kuò)大自己的視野,開(kāi)拓自己的眼界!
做到以上這些,我相信你已經(jīng)是個(gè)合格的程序員了,到了這個(gè)時(shí)候,你還會(huì)覺(jué)得學(xué)新語(yǔ)言難嗎?我相信此時(shí)的你,考慮的已經(jīng)是軟件設(shè)計(jì)了!
原文:http://blog.jobbole.com/11056/
【編輯推薦】