程序员如何掌握新技术与时俱进
生活随笔
收集整理的這篇文章主要介紹了
程序员如何掌握新技术与时俱进
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
原文:程序員如何掌握新技術(shù)與時俱進(jìn)
我們程序員都是要不停學(xué)習(xí)的,因為計算機技術(shù)日新月異,短短5年已經(jīng)發(fā)展得不可思議了,那我們?nèi)绾我?guī)劃自己的學(xué)習(xí)呢?這個世界唯一不變的就是變化,IT圈子不外如是。計算機領(lǐng)域一直在改變,從基礎(chǔ)框架到計算設(shè)備,還有幾乎每天都涌現(xiàn)出的新技術(shù)。因此,作為一名程序開發(fā)人員,我們更要通過不斷的學(xué)習(xí)來提高自己的技能。
一、如何選擇讀物 程序員需要的技能改變是如此之快,尤其是那些熱點的/快速演變的領(lǐng)域,找到這些領(lǐng)域合適的閱讀材料有時不那么容易。幾點建議: 利用好關(guān)注該類技術(shù)的那些網(wǎng)站。比如,在我學(xué)習(xí)iOS的過程中,我一直關(guān)注 RayWenderlish.com 和iOSDeveloperTips.com,它們都有定期較新的內(nèi)容發(fā)布。 如果你是想找些書籍,請盡量選擇電子書而不是紙質(zhì)書,編程是一個變革飛快的行業(yè),除非是Knuth的《計算機程序設(shè)計藝術(shù)》,很多書幾個月就過時了。 二、選一個實際的項目 記住這句咒語:“我聽見的,我忘了;我看見的,我能想起來;我做過的,我理解”。 閱讀是有益處的,但要想真正的理解某個編程語言/庫或者技術(shù),你只能親自動手,真正的參與到一個使用這種語言/庫/技術(shù)的項目中。”完成一個項目并在其中運用到你想學(xué)的技能或特性”是一個很具體的可衡量的目標(biāo),”學(xué)習(xí)某種語言/庫/技術(shù)“則太籠統(tǒng)了。一個清晰的目標(biāo)有助于你了解你的進(jìn)展。完成一個項目則會使你獲得寶貴的經(jīng)驗,有些甚至可以寫到個人簡歷中。盡一切可能來用構(gòu)建一個完整的項目的方式來學(xué)習(xí),而不是根據(jù)閱讀得來到東西學(xué)習(xí)一個范例。 絕大多數(shù)人都知道實際做項目而獲得的經(jīng)驗是很必要的。難處在于怎樣找到一個點子來開始一個項目。一些建議: 你這種新技能能否開發(fā)出一個家人或者朋友正需要使用的應(yīng)用?我有幾個小侄子,我發(fā)現(xiàn)給他們開發(fā)游戲是一個學(xué)習(xí)XNA/Cocos2D的絕佳方式;我很快還會為他們寫一個基于Sprite Kit的游戲。 有沒有什么開源項目正在使用你所學(xué)的新知識?你會發(fā)現(xiàn)貢獻(xiàn)模塊甚至創(chuàng)建項目給開源社區(qū)是一個很好的學(xué)習(xí)手段。有時從一個已有的項目繼續(xù)工作比從頭開始更加容易。 有沒有什么盈利/非盈利組織可能用到基于這種新技能的應(yīng)用?如果是這樣,搞定它不但可以使你學(xué)習(xí)并開發(fā)出一個應(yīng)用,并還可能獲得一個用戶群來給你提供大量的反饋。 三、教別人的同時學(xué)習(xí) 當(dāng)我在微軟作為布道者,想程序員們宣講時,我常常撰寫入門指南的演講稿和在線材料。有些,我負(fù)責(zé)的是一些我很熟悉的領(lǐng)域,但微軟擁有如此眾多的工具和技術(shù),并不斷有新的東西涌現(xiàn)出來,我經(jīng)常發(fā)現(xiàn)自己不得不學(xué)習(xí)新知識才能完成教程。 這也成為了一種非常好的手段來促織我學(xué)習(xí)新東西,因為教這些東西,你必須搞懂它們。由于你得把這些新東西轉(zhuǎn)化容易理解的內(nèi)容,傳遞給你的聽眾,以此為目標(biāo)促使你必須有合理的學(xué)習(xí)手段和方法。Floor Drees,一個澳洲的技術(shù)宣講/布道者說到,“坦誠的說,我覺得教別人的過程能促使自己學(xué)的飛快,我鼓勵每一個人去培訓(xùn)新人,即使你覺得自己也還只是個新人。” 如果你能得到合適的研究和學(xué)習(xí)資料(幸運的是,在微軟我通常能很容易的找到),并有足夠的時間和工具去試驗一些迷你的項目來得到更深入的理解,并且你很喜歡當(dāng)一名老師(無論一對一或一對多)或者作者,你也許想要嘗試教學(xué)的過程中來學(xué)習(xí)。 四、搞定攔路虎 當(dāng)你的開發(fā)技能到了一定水準(zhǔn),你會偶爾遇到攔路虎:一些短時間內(nèi)搞不定或理不清頭緒的問題。 這是個好事,真的!如果你從不嘗試新東西,那當(dāng)然會發(fā)現(xiàn)已有東西對你來說都毫無挑戰(zhàn),這也意味著你沒有真的在“求學(xué)”。最好的/有價值的學(xué)習(xí)經(jīng)歷正是那些拼命搞定某一問題的時光。你極盡所能嘗試各種方法并最終找到了解決方案,這就好像你在黑暗中探索,努力拼接出一條成功之路,這種能力在日后也會陪伴著你。 在這段探索之路,你需要以下幾個技巧: 找找看,確認(rèn)是否你自己或者別人已經(jīng)有一個項目解決了相似的問題 利用好在線開發(fā)者論壇。Stack Overflow是你的朋友,他這些年幫我解決了好多的問題。很多開發(fā)者社團也維護(hù)自己的論壇,確保自己檢查過這些站點。 五、參加課程 很多程序員有這樣的機會通過“構(gòu)建自己的項目/看其他人的項目/教授課程“來學(xué)習(xí)。但這不是所有人的習(xí)慣,有人喜歡在教室里接受傳統(tǒng)的課程。幸運的是這些同學(xué)也有很多可選的方案。 很多學(xué)校和社團都提供了對外公開的的編程課。如果你所在的城市有一些技術(shù)人員或者黑客交流中心,那么在那通常也有針對他們團體的一些編程指南,有時這是免費的。 在有些城市,那有新手入門課堂,在那你可以學(xué)習(xí)一門語言或一項技術(shù),它通常會有一些密集的課程和上手小實驗,這種培訓(xùn)通常持續(xù)幾天或者幾周。如果你有商業(yè)上的需求,需要對程序員進(jìn)行某種企業(yè)級工具/技術(shù)的培訓(xùn),例如微軟/甲骨文/Java或者SOA/云計算/敏捷開發(fā),那么你可能需要找到某個類似Web Age Solution這樣的培訓(xùn)機構(gòu)來幫助你完成。原文:程序員如何掌握新技術(shù)與時俱進(jìn)
總結(jié)
以上是生活随笔為你收集整理的程序员如何掌握新技术与时俱进的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 男子吐槽:为什么那么多人不喜欢996,非
- 下一篇: 如何选择高性能的数据分析工具,你需要看看