更新時間:2020-03-23 12:22:37 來源:動力節點 瀏覽2214次
怎樣學習才能從一名Java初級程序員成長為一名合格的架構師,或者說一名合格的架構師應該有怎樣的技術知識體系,這是不僅一個剛剛踏入職場的初級程序員也是工作三五年之后開始迷茫的老程序員經常會問到的問題。
什么是架構,什么是架構師?
從內心講我真的不想回答架構具體需要做什么,架構師應該具體負責什么。因為從實際情況看,在不同的系統層級,不同的需求下架構師的職責也會不同;從不同的技術角度看,架構師又是個變色龍——一時是技術的大拿,一時是技術的規劃者,一時是技術團隊的指揮者。
那么,該如何回答“什么是架構,什么是架構師”這個問題呢?這或許需要先搞清楚另外一個問題——一名程序員是如何走上架構師之路的?我從許多朋友那里了解到了很多實際案例,程序員走上架構師之路,總結起來最多的原因是因為他早前代碼寫的好。
架構師的定義?
個人覺得架構師需要具有以下幾特點:
知識廣度:需要知道主流技術為什么誕生,能解決什么問題?如果同一種業務用不用的技術來實現,會有什么哪些優缺點?比如:流行的ORM框架Mybatis和hibernate,他們之間的優缺點是什么?要有清晰的認識會能在技術造型時做出正確的決定。
抽象能力:對業務和技術進行抽象。業務抽象就是對需求進行分析后,能夠建立完美的實體類以及他們之間的聯系。技術抽象是對整體架構進行一個分層,各層之間的交互。這至關重要,如果技術抽象能力不足,這會導致整個系統的架構不靈活,難以維護和擴展。
知識的深度:至少是某個領域的專家,比如消息隊列,activeMQ熟悉其源碼,知道其實現。
優秀的學習能力:對新的技術和前沿性的技術進行學習,使用它來解決工作中的業務問題。
那么你該如何去做呢?我覺得可以從以下幾個步驟開始:
1:扎實的JAVA基礎,Thinkinjava上介紹的內容都能理解,做到這一步恭喜成為了程序員。
2:熟練使用主流框架,如:mybatis,spring等。
3:研究過至少一種以web框架的源碼,如springmvc,struts等。
4:架構過或者參與過高并發系統設計,知道如何應對突發情況。
5:對自己所處的業務能夠根據自己的知識維度,提出優化建議或者預測其風險點。
其實能否成為架構師跟機遇有很大關系,比如一個程序員,以上都做到了,但是公司并沒有給他這個機會去做,一個真正架構的機會。因為之前的架構師不離職他就沒有機會,這就是現實!
以上就是動力節點Java培訓機構小編介紹的“Java初級程序員成長Java架構師學習”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習