給迷茫的JAVA程式設計師一些中肯建議, 你還在虛度光陰嗎?

Java高階開發發表於2018-04-19

最近好多人私信問我,該怎樣才能成為架構師,還有一個就對當前的狀態感到迷茫。我在此做一個簡單的說明,或者對迷茫中的你來說有些許幫助。

這裡寫圖片描述

當前你感到迷茫嗎?

有很多人對現在的工作感到很沒意思,因為當前的工作,完全是實現業務,技術上沒有任何提高。在這種狀態下就會感到迷茫,特別是一想到將來這種迷茫感就更強烈了。

與其說迷茫還不如說是擔憂,隨著時間的推移,自己的技術又沒有長進,所以感覺憂心忡忡。

這裡分為二種人:

混日子,過一天算一天

這一種的我就不過多討論了,沒有意義。我也碰到過很多這樣的同事,此類程式設計師已經廢啦。

想提高自己的技術,往架構師方向努力。

給我發私信的人,大部分是這一種。首先,可以看出來 ,這些人都是有自己理想的人,也會付諸實踐的。想往架構師方向走,但是卻苦於沒有人帶,自己也不知道如何成為框架師。再不改變,此類程式設計師可能會也廢。
我想借這個文章和大家聊聊架構師這個話題,純屬個人理解,與對錯無憂。

架構師的定義?

個人覺得架構師需要具有以下幾特點:

知識廣度:需要知道主流技術為什麼誕生,能解決什麼問題?如果同一種業務用不用的技術來實現,會有什麼哪些優缺點?比如:流行的ORM框架Mybatis 和 hibernate ,他們之間的優缺點是什麼?要有清晰的認識會能在技術造型時做出正確的決定。

抽象能力:對業務和技術進行抽象。業務抽象就是對需求進行分析後,能夠建立完美的實體類以及他們之間的聯絡。技術抽象是對整體架構進行一個分層,各層之間的互動。這至關重要,如果技術抽象能力不足,這會導致整個系統的架構不靈活,難以維護和擴充套件。

知識的深度:至少是某個領域的專家,比如訊息佇列,activeMQ熟悉其原始碼,知道其實現。

優秀的學習能力:對新的技術和前沿性的技術進行學習,使用它來解決工作中的業務問題。

那麼你該如何去做呢?我覺得可以從以下幾個步驟開始:

1: 紮實的JAVA 基礎,Think in java上介紹的內容都能理解,做到這一步恭喜成為了程式設計師。
2:熟練使用主流框架,如:mybatis,spring 等。
3:研究過至少一種以web框架的原始碼,如spring mvc ,struts 等。
4:架構過或者參與過高併發系統設計,知道如何應對突發情況。
5:對自己所處的業務能夠根據自己的知識維度,提出優化建議或者預測其風險點。

其實能否成為架構師跟機遇有很大關係,比如一個程式設計師,以上都做到了,但是公司並沒有給他這個機會去做,一個真正架構的機會。因為之前的架構師不離職他就沒有機會,這就是現實!

很多人不知道該怎麼去學習架構師所需的知識,在此我分享給你我收藏的視訊教程:
這裡寫圖片描述

18年最新架構師全套視訊
這裡寫圖片描述

這裡寫圖片描述
18年最新架構師全套視訊

需要架構師全套視訊教程的加關注,想學習Java工程化、多執行緒、高效能及分散式、深入淺出。效能調優、Spring,MyBatis,Netty原始碼分析的朋友可以關注我,加Java高階開發群697579751,即可獲取Java大型網際網路技術的視訊免費分享給大家。
這裡寫圖片描述
這裡寫圖片描述

相關文章