初入職場或還在校的同學想必都會有一些共同的疑惑,比如:
-
我到底該選哪個技術方向?
-
現在該學哪門語言?
-
未來 Java 語言的發展趨勢如何?
-
到底應該學 Python 還是 Java?
這些問題的本質其實都是技術的投資決策問題,也即現在我該把時間精力花在哪個方向上,未來的收益才可能最大。
這個問題並不好回答,因為這個問題的本質和“我現在應該投資哪隻股票”一樣。沒有人能回答好這個問題,我覺得最好的做法就是:從投資的出發點而非終點來選擇一條路徑。
至於這樣選擇的路徑能否在未來獲得很好的收益,是無法預測的。但選擇技術方向和選擇股票不同的是,只要你在這條路徑上持續努力、學習與進步,基本可以保證能和“大盤”持平而不至於有虧損,但能否取得超過“大盤”的收益,其實是看運氣的。
選擇程式語言
選擇技術方向,從某種意義上講就是選擇語言。
雖然有一些流傳的說法,類似於:“語言並不重要,必要的時候可以在各種語言間自由切換。”但實際情況是,能做到自由切換的前提是你得對一門語言掌握到通透之後,再學習其他語言,才可能觸類旁通。
計算機程式語言雖然很多,但種類其實有限。2019 年 10 月 TIOBE 程式語言排行榜上的前三位(Java、C、C++),本質上其實是一類語言。但大部分人只能選擇去熟悉並通透其中一種,因為這些語言背後都有龐大的生態圈。