溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

別再學(xué)習(xí)框架了

發(fā)布時(shí)間:2020-07-20 13:46:59 來源:網(wǎng)絡(luò) 閱讀:806 作者:HappyBoyLi 欄目:開發(fā)技術(shù)

我們是開發(fā)者,我們需要和技術(shù)與時(shí)俱進(jìn),我們每天學(xué)習(xí)編程語言,框架,庫(kù),我們知道越現(xiàn)代的工具,我們就越好
和?Angular, React, Vue, Riot, Ember, Knockout?保持與時(shí)俱進(jìn)很有趣。但是我們是在浪費(fèi)時(shí)間。
時(shí)間是我們擁有最珍貴的資源,時(shí)間是有限的,一去不復(fù)返。
科技和時(shí)尚一樣,變化非???,為了趕上他,我們需要飛速奔跑,這場(chǎng)比賽沒有贏家因?yàn)闆]有終點(diǎn)。
然而我的導(dǎo)師曾經(jīng)給我上了一課:

導(dǎo)師:Ed,你在干什么?
我(驕傲的):我在讀一本關(guān)于如何用GWT構(gòu)建現(xiàn)代Java應(yīng)用的書。
導(dǎo)師:為了什么?
我: 身為java開發(fā)者,我需要跟上趨勢(shì),GWT算一個(gè)。
導(dǎo)師:在GWT之前你讀了什么技術(shù)書?
我:一本500頁的Apache Tapestry,Tapestry算一個(gè)。
導(dǎo)師:現(xiàn)在Tapestry算一個(gè)么?
我:不在是趨勢(shì)了,GWT才算。
導(dǎo)師:你能再用Tapestry的技術(shù)來解決當(dāng)前的問題嗎?
我:不,沒人用了。
導(dǎo)師:Tapestry的知識(shí)有助于你更好的理解GWT了呢?
我:沒有,不過我在找一些共同的模式。
導(dǎo)師:這是設(shè)計(jì)模式,他幫你解決現(xiàn)在問題了么?
我:是的,很多有用。
導(dǎo)師:技術(shù)來來去去,但是有很多共性,要合理得安排優(yōu)先級(jí),投資80%的時(shí)間學(xué)習(xí)基本原理(fundamentals),留20%時(shí)間學(xué)習(xí)框架,庫(kù)和工具。
我:恩....僅僅20%的時(shí)間留給框架,庫(kù)和工具?
導(dǎo)師:是的,你在工作中解決問題的時(shí)候都會(huì)學(xué)到這些。
我:謝謝
導(dǎo)師:以后你會(huì)更加感謝我的

這條建議改變了我的生活,我把我書架上50%框架的書下架了,罪惡感從50本下降到0本。多爽??!
于是我買了很多長(zhǎng)青書,這些書花了我80%的時(shí)間:

The Pragmatic Programmer 《程序員修煉之道 從小工到專家》
Clean Code 《代碼整潔之道》
The Clean Coder 《代碼整潔之道-程序員的職業(yè)素養(yǎng)》
Domain-Driven Design 《領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)》
Growing Object-Oriented Software, Guided by Tests 《測(cè)試驅(qū)動(dòng)的面向?qū)ο筌浖_發(fā)》
Continuous Delivery 《持續(xù)交付》

我同時(shí)只買了一本當(dāng)下技術(shù)的書,林迪效應(yīng)表明,Spring框架一個(gè)好的投資:技術(shù)未來的生命和現(xiàn)在生命成正比,過去的存活期意味著未來更長(zhǎng)的存活期。技術(shù)在市場(chǎng)時(shí)間越久,越值得投資。不要急于學(xué)習(xí)新技術(shù),可能它有很高的死亡率。時(shí)間會(huì)證明哪些技術(shù)值得投資。時(shí)間是最好的老師。學(xué)會(huì)等待。

十年過去了,我開發(fā)了50個(gè)不同的項(xiàng)目,感謝這些建議,我學(xué)到的每一件東西都可以跨公司,團(tuán)隊(duì),領(lǐng)域。我的知識(shí)依然相關(guān),我沒有浪費(fèi)時(shí)間。
從表面看所有項(xiàng)目都不同:

編程語言不同。但是設(shè)計(jì)smell相似。
框架不同。但是設(shè)計(jì)模式相似。
開發(fā)者不同,但和人相處規(guī)則是統(tǒng)一的。

框架、庫(kù)和工具來來去去。時(shí)間才是最寶貴的。 把你的黃金時(shí)間投資在可轉(zhuǎn)移的技能。這樣技能總是相關(guān)的。

記?。?/p>

微服務(wù)框架 -演進(jìn)式架構(gòu)
新的編程語言 -代碼整潔之道, 設(shè)計(jì)模式,領(lǐng)域驅(qū)動(dòng)開發(fā)
LeSS, SAFe - 精益制造原則
Hystrix? 容錯(cuò)模式
Docker 持續(xù)交付
Angular Web, HTTP and REST

我的雜想:
候選人簡(jiǎn)歷寫的熱愛新技術(shù)是不是一件好事?面試者平時(shí)時(shí)間分配到底怎么樣?熱愛舊技術(shù)也許是好事。
學(xué)習(xí)技術(shù)不一定學(xué)習(xí)原理?學(xué)習(xí)本質(zhì)和解決方案。
編程語言本質(zhì)?是不是要學(xué)習(xí)Programming Language Pragmatics和編譯原理?是的
Redis是不是要學(xué)數(shù)據(jù)結(jié)構(gòu)(效率),內(nèi)存管理(存儲(chǔ)),復(fù)制(可用性)?是的,就是一個(gè)持久化,高可用的內(nèi)存數(shù)據(jù)存儲(chǔ)。
數(shù)據(jù)庫(kù)是不是必須要理解ACID的實(shí)現(xiàn)?存儲(chǔ)引擎的實(shí)現(xiàn)?是的,更重要的是學(xué)習(xí)通用Database Architecture
Great Ideas有虛擬內(nèi)存,緩存,正則表達(dá)式,工作集 。 Great Priciples 通信,計(jì)算,記憶,協(xié)作,評(píng)估,設(shè)計(jì)。
知道為什么要用一個(gè)技術(shù)只是對(duì)技術(shù)理解的一種視角,但不是唯一,從工程角度知道為什么有助于理解問題域以及換種場(chǎng)景的靈活使用。消息隊(duì)列是Bounded Buffer,排隊(duì)論在計(jì)算機(jī)里面無處不在。兩個(gè)系統(tǒng)間速度不一樣時(shí)候,就會(huì)用到緩沖區(qū)。例如cpu與內(nèi)存間的高速緩沖區(qū)。
Zookeeper? 協(xié)作
Mybaits?Data Access Patterns,JFinal? Active Record
Spring? Bussiness Container
SpringMVC?Web Controller
SpringCloud Gateway? Gateway + Locator Patterns
J2EE Patterns....
......


原文地址:https://sizovs.net/2018/12/17/stop-learning-frameworks/

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI