寫給技術人員:停止學習框架,專註基礎知識
雷鋒網 AI 科技評論按,作為一名開發人員,需要不停地學習新技術。那麼,我們應該學習什麼樣的技術?關於這個話題,有著 15 年工作經驗的軟體工程師 Eduards Sizovs 寫了一篇文章,讓我們來看看他是怎麼說的吧~
我們是開發者,我們需要掌握最新的技術。我們每天學習編程語言、框架和庫。我們知道的工具越新越好。
但這一切都是在浪費時間!
時間是我們擁有的最寶貴的資源。時間是有限的,不可更新的,並且是你不能買到的。
科技就像時尚一樣,它也在以光速變化。為了趕上時間的變化,我們需要跑得很快。這場比賽沒有贏家,因為它沒有終點。
圖片來自《華爾街之狼》
有一次,我的導師給我上了一堂課。
導師:「Ed,你在做什麼?」
我(驕傲地說):「我在閱讀一本關於如何用 GWT 構建現代 Java 應用程序的書。」
導師:「為什麼?」
我:「作為一名 Java 開發人員,我需要緊跟時代趨勢。GWT 是我必須跟進的技術。」
導師:「在學習 GWT 之前,你讀了什麼技術書籍?」
我:「一本 500 頁的關於 Apache Tapestry 的書,Apache Tapestry 也是需要學習的知識。」
導師:「那現在你還學習 Apache Tapestry 嗎?」
我:「不了,現在我學習 GWT。」
導師:「那你能用 Apache Tapestry 相關的技術,解決現在遇到的問題嗎?」
我:「不能,它已經不會被用到了。」
導師:「Apache Tapestry 技術能幫助你更好地理解 GWT 嗎?」
我:「不,並沒有,但我看到了一些重複的模式。」
導師:「這就是設計模式。它能幫助你解決目前的問題嗎?」
我:「是的,很多都能。」
導師:「技術變了又變,但它們都有共通性。正確地設置優先順序:你需要把 80% 的時間花在基礎學習上,然後剩下 20% 的時間留給框架,庫和工具的學習。」
我:「只有 20% 的時間留給框架、庫和工具?」
導師:「是的,在以後解決工作相關問題的過程中,你隨時都會學習到這些。」
我:「謝謝。」
導師:「你以後會更加感謝我。」
這一建議改變了我的人生。我把書架上所有和框架相關的書都移走了:從 50 本變為 0 本。多麼大的改變!
我買了一套基礎書籍。這些書佔據了我 80% 的學習時間:
The Pragmatic Programmer
Clean Code
The Clean Coder
Domain-Driven Design
Growing Object-Oriented Software, Guided by Tests
Continuous Delivery
我還買了一本關於當前技術的書,學習 Spring 框架是一項良好的投資:
技術的未來預期壽命與其當前存在時間成正比,每一段額外的生存期意味著更長的剩餘預期壽命。
技術存在的時間越長,學習它就越安全。
不要急於學習新技術——它有很高的消亡概率。
時間是最好的導師,它會證明哪些技術值得學習,所以請學會等待。
十年過去了,我經歷了 50 個不同的軟體項目。感謝這些建議,我學到的所有東西都可以跨公司、團隊、跨領域使用。今天,我所學的知識仍然有用。我沒有浪費時間。
只有深入研究項目的本質,你才會發現它們都是相似的:
編程語言是不同的,但設計是相似的。
框架是不同的,但設計模式是可以通用的。
開發者是不同的,但與人打交道的規則是統一的。
記住——框架、庫和工具是會變化的。時間是寶貴的。
圖片來自於 2011 年時代雜誌
請將寶貴的時間花在可移植的技能上:
微服務框架進化體系結構
新的編程語言,乾淨的代碼,設計模式,DDD
量少安全精簡編碼原則
高端、容錯的模式
容器持續交付
Angular 網頁、HTTP 和 REST
via:https://sizovs.net/2018/12/17/stop-learning-frameworks/
雷鋒網雷鋒網
※亞馬遜密集下注Aurora和Rivian 汽車出行風口悄然生變
※站在5G潮頭 愛立信如何重描金字招牌 | MWC 2019
TAG:雷鋒網 |