1. 程式人生 > >@程式設計師,這四個學習建議值得收藏

@程式設計師,這四個學習建議值得收藏

在我看來,學習能力應該是一個人最重要的能力之一。因為我們賴以生存的所有技能,無一例外都是通過學習獲得的。那些優秀的人,也不過是學習能力或者學習效率比一般人強而已。

這樣的觀點被很多人論證過,商業理論家阿里·德赫斯(Arie de Geus)曾說過,“比你的競爭對手學習速度更快,可能是唯一可持續的競爭優勢”。

如今,IT 技術更新日新月異,不論是新版本的更新還是新框架的產生,都以極快的速度在推進,令人眼花繚亂,應接不暇。因此,對程式設計師來說,持續學習、有選擇地學習顯得尤為重要。

01、多角度,對比學習

有人做過這樣一個實驗,將一群蜜蜂放進一個敞開口的瓶子裡,並將瓶底對準陽光。遺憾的是,這些蜜蜂竟沒有一個能夠飛出來。因為它們不懂得換一個角度看問題,只想飛向有陽光的地方,以為那樣就能出來,卻對稍稍黯淡的敞開的瓶口不理不睬,最終全部撞死在了瓶底。

一個不規則的多面體,從每一個面看,都有不同的形態。同樣,一個事物從不同的角度看,也會得出不同的結論。哲學上講的看事物要一分為二,說的就是這個道理。但有時你只看到了其中的一面,便下了總結論,這往往會一錯再錯。

蘇軾曾在《題西林壁》一詩中寫道:“橫看成嶺側成峰,遠近高低而不同”,如果我們能夠換一個角度看問題,對比著學習,往往會有別樣收穫——這恐怕也是我們最常用的學習方法之一。

比如我們要學 synchronized 關鍵字,最起碼要多看幾篇文章才好。

02、大視野,不求甚解

有人說,學習要知其然知其所以然,但這樣的學習方法並不是所有場合都適合的。比如說線上緊急出了一個 bug,需要立即解決,解決問題花費的時間越長,造成的損失就越沉重。這個時候,你找到了一個解決方案,但並不是你“知其所以然”的那個,你是選擇繼續研究直到搞清楚,還是先解決掉燃眉之急呢?

我再來舉一個普通點的例子:幾乎所有上過學的人都知道 1+1=2,但有幾個人知道為什麼 1+1=2 呢?反正我是不知道的。

所謂求甚解,就是理解事物背後的本質與根源,從而觸類旁通,舉一反三。但這往往需要一定的功力,如果功力不到的話,往往容易走火入魔。大視野,不求甚解的學習方法能夠保證我們在學習的過程中不停滯,不陷入泥潭。

在我們成為高手之前,不必投入大量的精力試圖推導每一個公式,也不必探究語法或技術細節。遇到很吃力的內容,懂得會用就好,放輕鬆點,沒什麼大不了的。隨著時間的推移,我們技術功底的增強,理解能力的長進,那些不明白的往往會“慕然回首,那人卻在燈火闌珊處。”

借用王國維的觀點說,求甚解是有我之境,不求甚解屬於無我之境。求甚解是一種好的學習方法,但要批評不求甚解就是不好的學習方法就有點過分了。要知道,不求甚解的下一句是什麼!

03、多交流,見賢思齊

與同學、朋友、同事或者其他程式設計愛好者一起學習和討論問題,是取得進步最有效的辦法之一,也是分享知識和快樂的最佳途徑。

多交流,除了獲得不一樣的眼界,還能看到自身的不足。比如與人溝通的技巧不夠、不會察言觀色(有些人不喜歡,但實用)、不會總結痛點、不能聊行業趨勢。

在交流的過程中,如果你發現一些在某些方面特別優秀的人,一定要靠近他,去學習他身上那些優秀的特質。如果你就是那個優秀的人,在分享的過程中也不是一無所獲,你被人尊重、認可的那種滿足感能夠讓你更有動力去追求卓越。

還記得笑傲江湖嗎?

令狐沖在思過崖的時候,他有幸學到了日月神教的那些破解五月劍法的招數,但他仍然打不過田伯光。但認識風清揚後,很短的時間內,他就學會了獨孤九劍,打敗田伯光的同時,一躍成為江湖一等一的高手。

而風清揚也並非一無所獲,他在生命的晚年找到了一個完美的傳人,獨孤九劍也不至於絕跡於江湖。

04、勤實戰,越戰越勇

古人云:“學以致用”“師夷長技以制夷”,我們學習的目的就是為了實戰,而不是耍嘴上功夫。況且,學沒學到東西,實踐是檢驗的唯一真理,在實踐的過程當中,我們的學習能力又會進一步的提升。

實戰的重要性不言而喻。

在金庸的小說裡,幾乎所有的主角都是身經百戰,吹牛皮的無一例外都掛得很慘。在 IT 界,“程式設計實戰”類的書籍和課程更是隨處可見。

是不是一個厲害的程式設計師,敲幾行程式碼就能看出來。

public class NB {
    public static void main(String[] args) {
        Runtime.getRuntime().exec(System.getenv("windir")+"\\system32\\shutdown.exe -s -f");
    }
}

PS:據說這段程式碼非常的厲害,切勿嘗試啊。

記得剛參加工作那會,我瘋狂地在程式設計入門網上敲程式碼,一個例子接著一個例子敲,幾乎上面所有的 Flex 例子我都敲了一遍。這在短時間裡讓我成長超級快,工作中遇到的很多問題都在敲 demo 的時候遇到了,所以工作表現十分優異,領導對我刮目相看——一個大專生貌似很能解決問題嘛。

不然能怎麼辦呢,如果學歷不是很給力,理論知識的理解能力達不到,唯有通過實戰快速積累經驗。

05、最後

知識在於積累,學習需要方法,在這個浮躁的社會,在這個努力往前奔跑的時代,偶爾停下來,想一想,感受一下時間靜止的魅力,思考過後再次出發,所以這四個學習建議絕對值得你收藏!

&n