向高手學(xué)習(xí)是每個(gè)新手的心愿,但遇到的最大的問題是沒有高手愿意教,這篇文章主要是解決這個(gè)問題。
向高手學(xué)習(xí)有以下訣竅:
善于觀察
不需要高手說話,也可以從高手那里學(xué)到東西,那就是靠多觀察。
1. 觀察代碼
不是所有高手都愿意或都有時(shí)間來指導(dǎo)新手,所以如果能拿到高手的代碼,就要多學(xué)習(xí)借鑒。
先從比較好學(xué)的部分入手,比如命名方法,代碼縮進(jìn)這些;其次是函數(shù)、類的封裝方法;再次是整個(gè)程序的架構(gòu)方法。很多人抱怨沒有師傅指導(dǎo),但實(shí)際上他們?cè)?jīng)與很多很好的代碼擦肩而過,而沒有去學(xué)習(xí)。
一種方法是模仿高手編程的風(fēng)格,看不懂的地方就去問。高手一般很樂于回答自己為何如此這般,因?yàn)樗麄円彩嵌嗄攴e累下來的經(jīng)驗(yàn),引以為豪并樂于分享。但不要問高手低級(jí)或空泛的問題,比如“你覺得命名規(guī)范怎么樣才好?”很多編程很久的人也說不出來,雖然他們做得很好。這些都是需要在模仿中學(xué)習(xí)的東西,而不是靠口口相傳。
2. 觀察高手的工作習(xí)慣和工作環(huán)境
可以觀察的東西有很多,不限于代碼本身。高手打字的方法,使用快捷鍵的方法,打開窗口的方法,使用的輸入法,選中一段文字的方法,拷貝粘貼的方法,切換窗口的方法……任何區(qū)別一個(gè)高手與新手的方法都值得學(xué)習(xí)。
比如修改完Html代碼后想看效果的最快的方法是:Alt+F+S+Tab(保存并切換到瀏覽器), Alt+D(定位到地址欄), Enter(回車刷新),看起來很長的按鍵組合,但可以在大約1~2秒左右完成。
這些格式這樣的技巧雖然看似接升不了多少時(shí)間,但是一天下來,可能就有半個(gè)小時(shí)之多。加上自己操作體驗(yàn)的改進(jìn)使得注意力可以集中在編程上面,實(shí)際可獲得的時(shí)間會(huì)不止于此。
善于提問
1. 多思考,少提問
很多新手都很希望一下知道答案,繞過中間繁瑣的求知過程,其實(shí)這樣很不好。
兩年前同時(shí)從頭學(xué)習(xí)Html + JS。 Jquery + asp.net + C# + LinQ + MVC……這些新東西的時(shí)候,覺得在網(wǎng)上搜索答案的過程很漫長和低效;但過了一段時(shí)間突然感覺到,很多新問題的答案似乎早在解決老問題的時(shí)候就見到過,一搜就能搜到;再往后就發(fā)現(xiàn)多數(shù)新問題甚至早就知道答案了。
所以,要把解決問題的過程當(dāng)作積累的過程,而不是找單個(gè)問題的答案的過程,對(duì)日后的幫助極大。
2. 帶著答案提問
高手一般不屑于解決低級(jí)問題,也不愿意從頭解決問題(因?yàn)閱栴}常常是“問題集”,某些是關(guān)鍵問題,某些是低級(jí)問題),而是喜歡解決關(guān)鍵問題。
所以每次提問高手的時(shí)候,最后都是解決了一半的問題,帶著一些半截的答案找高手最好。高手也會(huì)覺得自己受到尊重,因?yàn)楦呤指杏X自己在被“提問”,而不是替新手工作。
3. “主動(dòng)”提問
之前提到過主動(dòng)搜索,就是不要指望能直接搜索到答案,而是每次主動(dòng)分析思考搜索出來的結(jié)果,或許改變搜索的關(guān)鍵詞,或許改變搜索的網(wǎng)站,靠自己找到答案。
主動(dòng)提問也是這個(gè)意思。被突然問起什么問題來的時(shí)候,高手并不知道很多前因后果,相反問問題的新手可能更理解這些。這時(shí)候也就不能指望高手直接給出答案,而是要分析和思考高手回答的內(nèi)容,乃至反問的問題,靠自己找到答案。
這種思維方式又叫福爾摩斯思維方式。福爾摩斯總是不是第一個(gè)到現(xiàn)場的,也不是知道最多的,但他總能從別人都看到都聽到的事情里邊推斷出新的線索。就在于他能多思考,主動(dòng)提問。
善于互動(dòng)
沒有高手天生有義務(wù)幫助新手,因?yàn)樗麄円灿凶约旱墓ぷ。另外從公司的角度看,高手工作能力更?qiáng),如果被糾纏在幫新手解決問題中,生產(chǎn)力會(huì)下降。因此要注意方式方法。
1. 把握時(shí)機(jī)
不要因自己需要而發(fā)問,而要因高手有空而發(fā)問。
如果感覺高手正在聚精會(huì)神地解決自己的問題,那么就先等等。如果他起身倒水喝茶或者和別人聊天討論問題,就可以摻和進(jìn)去。這樣高手不會(huì)感覺被打攪,更容易幫助新手。
2. 建立互助關(guān)系
新手幫助高手看似很難,其實(shí)不然。
比如新手可以幫助高手寫測(cè)試代碼,或者借助高手的底層庫幫高手編寫一些“膚淺”的上層應(yīng)用,等等。但這些都有兩個(gè)收獲:一則新手有機(jī)會(huì)接觸到高手寫的代碼,二則遇到問題可以堂而皇之地邀高手一起解決了。
當(dāng)然更完善的狀態(tài),是之前提到過的松結(jié)對(duì)編程和139團(tuán)隊(duì)中的師徒制度。
總結(jié):好學(xué)生于好老師是并存且互為因果的,如果新手很多年都感覺沒有人愿意幫助自己或沒學(xué)到過東西,都應(yīng)該反思自己是否少做了一些事情。
關(guān)于我們
產(chǎn)品與平臺(tái)
企業(yè)信息咨詢