功夫明星李小龍有一句名言:“我不怕練了一萬種腿法的人,我怕的是同一種腿法練了一萬次的人,”
可見,只要一門心思地做一件事情,就能夠達到出神入化的境地,連一代功夫大師都會懼怕你,
在2020年,你需要學習一種新的編程語言還是像李小龍說的那樣繼續你已經掌握的語言?
還是那句話,具體問題具體分析,
如果你剛剛開始學習第一門編程語言,那么我建議你先正確地學習這門語言,但如果你已經正確地掌握了一種語言,或者你是一名經驗豐富的軟體開發人員,已經掌握了不止一種編程語言,那么我建議你明年學習一種新的語言,
學習一門新的編程語言是要付出代價的,會耗費大量的時間、精力和腦力,但學習一門新的語言可以直接或間接地給你帶來巨大的好處,
下面我將列出學習新編程語言的五大優勢:
1. 更大的工具箱
如果你只會使用一種工具,例如錘子,那么你會嘗試在每個場景(不管是否合適)中都使用錘子,軟體開發人員也是如此,
人們都想待在自己的舒適區里,想一直使用已經熟悉的編程語言,我見過許多開發人員只知道一種編程語言(如Java或C++),并試圖運用在所有用例中,
學習一種新的編程語言能使工具包更加豐富,讓你成為一個更好的開發人員,
2. 職業發展
如果你想進入此職業領域,比如,你想成為一名軟體架構師或解決方案架構師,那么你的專業知識不僅要深入更要廣泛,作為軟體架構師,你應該對整個堆疊做出設計決策,而不僅僅是后端或前端,
曾幾何時,有一種“象牙塔”架構師,他們可以為一個專案設計軟體架構,而不需要知道實際的編碼,但公司越來越傾向于尋找能夠編碼的軟體架構師,
如果你是一個軟體架構師,可以用多種編程語言撰寫代碼,并且可以與開發人員交流,那么開發人員將更尊重你,
再次強調,通往軟體架構師或解決方案架構師的道路將需要許多其他技能,
但是,如果你想成為一名軟體架構師或解決方案架構師,學習新的編程將對你大有助益,
3. 通往全堆疊軟體開發之路
隨著微服務架構的興起,對全堆疊開發人員的需求只會越來越多,
我之前提到微服務架構需要一個跨功能的團隊,例如在一個團隊中, 2個開發人員對前端進行編碼, 2個開發人員只對后端進行編碼,這個團隊就不夠靈活,由于前端和后端開發人員并行作業,假如遇到前端或后端開發人員都無法作業的情況,團隊的進度將受到阻礙,在堆疊之間切換的完整堆疊開發人員越少,團隊發展的越好,
此外,公司還愿意支付額外的工資給一個全堆疊的開發人員,
現在,學習另一種編程語言不會直接讓你成為一個完整的堆疊開發人員,但能對你提供極大的幫助,
4. 更具全域觀
現如今,編程語言的領域廣闊,多樣且復雜,通常,一種編程語言只覆寫編程語言領域的一小部分,有一個著名的故事,盲人只摸大象的一個部位,然后猜摸得是什么,例如有人摸大象的尾巴,說自己摸到的是繩子,編程語言也是如此,
以下是主流編程語言范例:
在一個范式中,還有更多的子范式,通常,一種編程語言只關注一種范式(例如C是程序范式,Haskell是函式范式),也有許多語言觸及到多個范式,盡管不是100%(例如,Java是面向物件的,部分屬于功能性),
學習一門新的編程語言將使你對編程語言有更全面的了解,像任何其他領域一樣,一個更大的全域性圖景往往是有幫助的,并且能得到額外的優勢,
5. 更強的適應性
在快樂的舊時代(例如上個世紀),開發人員的生活很簡單,那個年代,學習一種主流編程語言,就可以作業一輩子,
但在現代,軟體開發人員的生活更具變動性,隨著微服務(Microservices)的興起,多語言編程(Polyglot programming)已經成為一種常態而非特例,
在作業或專案中可能需要學習一門新的語言,人類的大腦在遷移學習方面非常出色,如果你已經掌握Haskell或Scala,那么學習其他函式式編程語言就會很快,如果你學習了一種現代語言,例如Kotlin,那么你可以很快地學習其他類似的現代語言(例如TypeScript),
現在,即使是前端web框架也使用不同的編程范式,因此,如果你已經了解Scala或Haskell,就可以比其他人更快地了解前端框架React,因為React大量使用函式式編程的概念,
通常公司都想用一個新的軟體堆疊來探索新的軟體開發,如果你已經知道編程語言,就可以很容易地抓住機會使用新的更酷的專案,
不管是綜合發展還是精益求精,適合你的才是最好的!
看到這里是不是又有很多感悟了呢~
如果你很想學會編程,那么小編推薦我的C語言/C++編程學習基地【點擊進入】!
都是學編程小伙伴們,帶你入個門還是簡簡單單啦,一起學習,一起加油~
還有許多學習資料和視頻,相信你會喜歡的!
涉及:游戲開發、常用軟體開發、編程基礎知識、課程設計、黑客等等......

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/477.html
標籤:其他
