技術泥潭,你不得不防!

彤哥讀原始碼發表於2021-02-04

問題

今天的話題比較沉重,可能會被打。

我先提兩個問題:

1、離開spring,你還會寫程式碼嗎?

2、現在培訓機構的廣告滿天飛,都在營造一種技術牛逼就能進大廠,還各種販賣焦慮,你認為學習完各種牛逼的技術就能進大廠嗎?

如果第一個問題你回答不能,第二個問題你回答能。

那我得警告你了,你可能陷入了技術泥潭。

什麼是技術泥潭

什麼是技術泥潭呢?

這個詞是我發明的,它是指你陷入了某種技術不能自拔,或者是陷入一種外部營造出來的需要持續不斷學習“技術”的氛圍不能自拔。

這兩種情況都很危險。

Spring泥潭

首先,我們看spring的例子。

spring確實很牛逼,它為java帶來了新的春天。

站在老闆的角度,我肯定希望你直接用spring就可以了,因為能夠極大的減少開發的複雜度和維護成本,而且你走了,來個人都能搞。

但是,站在員工的角度,一旦你把自己陷入到spring的技術棧裡,對於個人的成長是非常不利的。

正所謂,時間均衡定律,你在一個地方花費的時間多了,在另外一個地方肯定就少了。

如果專注spring,沒有一兩年你是不可能達到精通的地步的,光是spring的官方文件就夠你讀好幾個月的了。

說實話,java領域不止spring,還有很多其他的技術,而且,要成為架構師,是需要點線面體全方位的提升的。

所以,一旦你在spring上面投入了過多的時間,你就沒有時間花在其他方面,你可能會錯過很多,甚至是,愛情。

技術泥潭

然後,我們再看第二種情況:陷入一種外部營造出來的需要持續不斷學習“技術”的氛圍不能自拔。

注意這裡的關鍵詞是學習技術不能自拔。

咋一看,這不是好事麼?

其實不然,你自己算算java領域你需要學習多少東西,jdk原始碼,jvm,netty,spring,MySQL,elasticsearch,kafka,rocketmq,mycat,sharding sphere。。。。。

隨便列一下,就有十幾種,這些技術一個一個認真學完,你自己算算要多少年,青春啊,歲月啊,愛情啊。。

最重要的是,一旦你陷入到技術學習中,你就會忽略其他方面的東西,比如思維能力,溝通能力,解決問題的能力。

最後,你可能會成為一個技術傻子。

該表達的意思,我表達到了,相信你能理解我的意思。

如何學習

所以,技術人應該學習哪些東西呢?

在之前的文章中,我也說過,應該學習下面幾種知識:

1、學習能夠幫助你快速理解業務的能力。

2、學習通識,並儲備技術。

3、學習社交能力,即軟實力。

上面3點在上一篇文章我們都說過了,就不再贅述了。

我們以分散式技術為例來看,應該掌握哪些通識呢:

1、理論,acid,cap,base,paxos(zab/raft),一致性hash

2、java體系,併發,多執行緒,同步器,unsafe,反射,動態代理

3、作業系統,CPU快取一致性,oscache

4、單機故障就加主備,單機瓶頸就加分片,分片就是分散式

你可以看看,是不是分散式框架都用到這些技術,不管是訊息佇列kafka和rocketmq,還是搜尋引擎Elasticsearch,或者是分散式快取redis cluster,當然,還有動物管理員zookeeper(分散式協調器)。

好了,今天的文章我們就聊到這裡。

題目

我留個題目,你可以嘗試不使用任何框架能不能寫出來:

甲和乙兩個人去看房,他們同時找到了中介,甲說我需要一房一廳、月租不超過1800,乙說我對房型沒有要求但是要在某某大廈1公里以內,價錢不是問題。

OK,題目就是這樣,請你用程式碼實現這個需求,前提是不使用任何框架。

小提示:題目有很多隱藏的資訊,需要你自己挖掘。

結語

最後,也歡迎同學們留言說出你的思路,或者討論一下,你有沒有陷入技術泥潭呢?

相關文章