android程序員這個(gè)行業(yè),技術(shù)體系更新速度快贬派,新技術(shù)新框架層出不窮急但,所有的技術(shù)都像是一個(gè)無底洞,當(dāng)你學(xué)得越多就會(huì)發(fā)現(xiàn)不懂的越多搞乏,不懂的越多波桩,需要學(xué)習(xí)的就更多。
因此请敦,一旦選擇了這個(gè)行業(yè)镐躲,就意味著你必須不斷學(xué)習(xí)才能跟得上大家的腳步储玫,而要想成為一名優(yōu)秀的程序員,更是需要通過正確的方法萤皂,設(shè)定正確的目標(biāo)來進(jìn)行不斷地學(xué)習(xí)撒穷。
1.讀文檔,讀文檔裆熙,讀文檔端礼,重要的事情說三遍!H肼肌蛤奥!
如果你是一名有一定開發(fā)經(jīng)驗(yàn)程序員,那我強(qiáng)烈地建議你一定要看官方文檔A鸥濉7睬拧!
如果你是一名初學(xué)者蚀同,那現(xiàn)階段來說唬血,看文檔會(huì)是件非常非常的吃力的事,但我還是強(qiáng)烈地建議你一定要看官方文檔唤崭,不過可以在你通過視頻教程或是書籍學(xué)習(xí)并入門之后再慢慢的閱讀拷恨。一門技術(shù)的官方文檔是對(duì)這門技術(shù)的體系結(jié)構(gòu)以及重要知識(shí)點(diǎn)最直接也是最準(zhǔn)確的描述和講解。如果你仔細(xì)閱讀過了它谢肾,那你就對(duì)這門技術(shù)的整個(gè)體系腕侄、架構(gòu)、知識(shí)點(diǎn)已經(jīng)有了宏觀上的認(rèn)識(shí)芦疏,在你實(shí)現(xiàn)某個(gè)功能時(shí)冕杠,你可以很快定位并找到最佳的解決方案。而那些沒有閱讀過文檔的人酸茴,在功能實(shí)現(xiàn)時(shí)則只能通過查找資料或是詢問別人的方式來找答案分预,一些本來可以使用官方特性輕松實(shí)現(xiàn)的功能可能一不小心便走了條復(fù)雜的彎路。閱讀英文文檔的另一個(gè)作用薪捍,就是會(huì)提高你在需要解決問題時(shí)搜索關(guān)鍵詞的能力笼痹,因?yàn)樽x得多了,很多關(guān)鍵單詞已經(jīng)留在了腦海中酪穿,當(dāng)你需要google或者stackoverflow的時(shí)候凳干,便很容易抓住重點(diǎn)關(guān)鍵詞從而搜索到需要的內(nèi)容。
2.項(xiàng)目實(shí)戰(zhàn)
首先要說的是被济,技術(shù)的學(xué)習(xí)是個(gè)日積月累救赐,由量變到質(zhì)變的過程,沒有任何的辦法能夠讓你在短時(shí)間內(nèi)成為大牛只磷。所以经磅,當(dāng)你通讀完官方文檔的時(shí)候泌绣,你實(shí)際上只是邁出了一小步,要成為真正的大牛预厌,還需要在之后的學(xué)習(xí)中不斷努力阿迈。
那我們?nèi)绾蝸磉M(jìn)行下一步的學(xué)習(xí)呢?
我們學(xué)習(xí)一門技術(shù)的最終目的就是將其運(yùn)用到實(shí)際項(xiàng)目中配乓,一門技術(shù)不管多厲害,如果沒有辦法運(yùn)用到實(shí)際項(xiàng)目中惠毁,那它的意義跟價(jià)值就非常有限了犹芹。
而且人腦不比計(jì)算機(jī),是會(huì)遺忘的鞠绰,如果不通過大量的項(xiàng)目實(shí)戰(zhàn)腰埂,很多知識(shí)點(diǎn)你很快便會(huì)忘記,至少我是這樣的(誰能告訴我蜈膨,記憶力不好怎么才能被拯救S炝!)翁巍。
所以讀完官方文檔后驴一,我們是一定要通過大量的項(xiàng)目實(shí)戰(zhàn)來不斷鞏固我們的知識(shí)點(diǎn)的,此時(shí)的你很多知識(shí)點(diǎn)其實(shí)是不能完全理解的灶壶,只有通過項(xiàng)目的歷練肝断,在踩坑中分析,在解決問題中成長驰凛,才能從本質(zhì)上理解一些技術(shù)的概念胸懈。
有經(jīng)驗(yàn)的開發(fā)人員應(yīng)該多多少少有這樣的經(jīng)歷,就是有些概念一開始并不是很理解恰响,但是在一次次的項(xiàng)目過程中趣钱,你會(huì)發(fā)現(xiàn)竟然不知不覺地明白了其中的原理,是的胚宦,就是這種感覺首有!
對(duì)于項(xiàng)目實(shí)戰(zhàn),我其實(shí)沒有太多的技巧枢劝,還是一句話绞灼,擼起袖子就是干,但是這個(gè)過程中你一定要去多思考呈野,為什么這么寫低矮,為什么這么做,學(xué)著去了解原理被冒,去關(guān)注本質(zhì)
3.讀技術(shù)文章
在這樣一個(gè)信息大爆炸的時(shí)代军掂,要從網(wǎng)上找到某一門技術(shù)的干貨文章是非常容易的一件事轮蜕,各類的技術(shù)平臺(tái)(csdn,cnblogs蝗锥,oschina跃洛,infoq,segmentfault等等等)终议,各類的微信平臺(tái)公眾號(hào)汇竭,都是很好的獲取干貨信息的途徑。
雖說官方文檔很神奇穴张,但是還是有很多知識(shí)點(diǎn)我們可能還沒發(fā)現(xiàn)细燎,因?yàn)樗麄兺[藏在更深的API文檔之中,而大量的API也導(dǎo)致我們很難將所有的API文檔都通讀皂甘,更多的還是將其作為一個(gè)查閱工具來使用玻驻。
在我的觀念里,不主動(dòng)去關(guān)注各種技術(shù)平臺(tái)獲取技術(shù)信息的程序員不是一名合格的程序員偿枕,
所以每天早晨我都會(huì)花至少一個(gè)小時(shí)在關(guān)注的各類技術(shù)平臺(tái)上獲取有用的信息
一方面查找相關(guān)技術(shù)的干貨文章璧瞬,通過對(duì)這些文章的閱讀對(duì)自己的知識(shí)點(diǎn)進(jìn)行鞏固和查漏補(bǔ)缺,畢竟技術(shù)的學(xué)習(xí)不僅僅是文檔上那些最原始的技術(shù)點(diǎn)渐夸,還包含各種架構(gòu)的設(shè)計(jì)嗤锉、工具的使用、功能的實(shí)現(xiàn)及解決方案的應(yīng)用等墓塌,通過這些平臺(tái)上的各種文章档冬,可以讓自己的知識(shí)體系更加地完善。
另一方面桃纯,作為一名開發(fā)人員酷誓,我們需要通過這些平臺(tái)了解最新的技術(shù)動(dòng)態(tài),關(guān)注技術(shù)的發(fā)展趨勢(shì)态坦,畢竟現(xiàn)在技術(shù)的更新速度非常之快盐数,技術(shù)生態(tài)圈的轉(zhuǎn)換隨時(shí)會(huì)導(dǎo)致某項(xiàng)技術(shù)的淘汰(作為一個(gè)俗人,我是來賺錢的伞梯,所以根據(jù)技術(shù)趨勢(shì)做好技術(shù)儲(chǔ)備對(duì)我來說是必不可少的)
4.技術(shù)學(xué)習(xí)光靠一個(gè)人是不行的玫氢,所以我們還需要多跟別人探討技術(shù)問題,可以是周圍的同事跟朋友谜诫,也可以是技術(shù)群
原因1:對(duì)大部分人而言漾峡,技術(shù)群給我們的好處之一就是不懂的技術(shù)問題可以進(jìn)去尋求幫助,當(dāng)然喻旷,提問的前提最好是你已經(jīng)百度生逸,Google跟stackoverflow過了,并且沒能找到合適的答案。
原因2:群里都是來自五湖四海的小伙伴槽袄,他們來自于不同的公司烙无,而不同的公司可能采用不同的技術(shù)或架構(gòu),通過對(duì)群里聊天內(nèi)容的篩選遍尺,我們經(jīng)常能在大家溝通的過程中看到一些新的技術(shù)框架或名詞截酷,我會(huì)將這些名詞跟框架記錄下來,然后到網(wǎng)上去進(jìn)行了解和學(xué)習(xí)乾戏,可以說迂苛,這在一定程度,幫助我拓展了視野鼓择。
原因3:這是我最喜歡干的事三幻,就是幫助別人解決技術(shù)問題,有人可能會(huì)疑惑為什么我會(huì)喜歡幫助別人解決技術(shù)問題
首先呢惯退,幫助別人解決技術(shù)問題能給我?guī)硪欢ǖ某删透?/p>
其次呢赌髓,你在幫助別人解決某個(gè)技術(shù)問題時(shí)从藤,你需要對(duì)這個(gè)問題的產(chǎn)生及相關(guān)概念有比較透徹的認(rèn)識(shí)催跪,同時(shí)還需要組織好自己的語言,用最通俗易懂的方式來讓對(duì)方理解夷野,這個(gè)過程無形中就幫助你鞏固了知識(shí)點(diǎn)懊蒸,同時(shí)也提高了自己的文字表達(dá)能力;
如果遇到?jīng)]有遇到過的問題悯搔,那解決這個(gè)問題的過程骑丸,不僅可以提升自己解決問題的能力,同時(shí)還能幫助我們學(xué)到新的知識(shí)妒貌。