成為一名合格的Java工程師,需要掌握哪些基本知識
如果想要成為一名合格的Java工程師,需要掌握以下幾個基本技能:
1.CoreJava,就是Java基礎、JDK的類庫,很多童鞋都會說,JDK我懂,但是懂還不足夠,知其然還要知其所以然,JDK的原始碼寫的非常好,要經常檢視,對使用頻繁的類,比如String,集合類(List,Map,Set)等資料結構要知道它們的實現,不同的集合類有什麼區別,然後才能知道在一個具體的場合下使用哪個集合類更適合、更高效,這些內容直接看原始碼就OK了。
2.多執行緒併發程式設計,現在併發幾乎是寫服務端程式必須的技術,那對Java中的多執行緒就要有足夠的熟悉,包括物件鎖機制、synchronized關鍵字,concurrent包都要非常熟悉,這部分推薦你看看《Java併發程式設計實踐》這本書,講解的很詳細。
3.I/O,Socket程式設計,首先要熟悉Java中Socket程式設計,以及I/O包,再深入下去就是JavaNIO,再深入下去是作業系統底層的Socket實現,瞭解Windows和Linux中是怎麼實現socket的。
4.JVM的一些知識,不需要熟悉,但是需要了解,這是Java的本質,可以說是Java的母體,瞭解之後眼界會更寬闊,比如Java記憶體模型(會對理解Java鎖、多執行緒有幫助)、位元組碼、JVM的模型、各種垃圾收集器以及選擇、JVM的執行引數(優化JVM)等等,這些知識在《深入Java虛擬機器》這本書中都有詳盡的解釋,或者去oracle網站上檢視具體版本的JVM規範。學習Java都需要掌握什麼知識?
5.一些常用的設計模式,比如單例、模板方法、代理、介面卡等等,以及在CoreJava和一些Java框架裡的具體場景的實現,這個可能需要慢慢積累,先了解有哪些使用場景,見得多了,自己就自然而然會去用。
6.常用資料庫(Oracle、MySQL等)、SQL語句以及一般的優化。
7.JavaWeb開發的框架,比如Spring、iBatis等框架,同樣他們的原理才是最重要的,至少要知道他們的大致原理。
8.其他一些有名的用的比較多的開源框架和包,Netty網路框架,Apachecommon的N多包,Google的Guava等等,也可以經常去Github上找一些程式碼看看。暫時想到的就這麼多吧,1-4條是Java基礎,全部的這些知識沒有一定的時間積累是很難搞懂的,但是瞭解了之後會對Java有個徹底的瞭解,5和6是需要學習的額外技術,7-8是都是基於1-4條的,正所謂萬變不離其宗,前4條就是Java的靈魂所在,希望能對你有所幫助。
9.學會使用Git。如果你還在用SVN的話,趕緊投入Git的懷抱吧
人工智慧、大資料、雲端計算和物聯網的未來發展值得重視,均為前沿產業,有興趣的朋友,可以查閱多智時代,在此為你推薦幾篇優質好文:
1.人工智慧時代,AI人才都有哪些特徵?
http://www.duozhishidai.com/article-1792-1.html
2.大資料攜手人工智慧,高校人才培養面臨新挑戰
http://www.duozhishidai.com/article-7555-1.html
3.人工智慧,機器學習和深度學習之間,主要有什麼差異
http://www.duozhishidai.com/article-15858-1.html
4.大資料人工智慧領域,如何從菜鳥晉級為大神
http://www.duozhishidai.com/article-1427-1.html
相關文章
- 成為一名合格的java工程師Java工程師
- 搞大資料,Java 工程師需要掌握哪些知識?大資料Java工程師
- 作為一名合格的前端開發工程師需要會哪些前端工程師
- java需要掌握的知識Java
- 想成為一名物聯網工程師,需要學習哪些知識?工程師
- 要想成為一名物聯網工程師,需要學習哪些知識?工程師
- 如果要想成為一名物聯網工程師,需要學習哪些知識?工程師
- 如何成為一名合格的(Java)程式設計師Java程式設計師
- 成為java高階程式設計師需要掌握哪些Java程式設計師
- 成為一個很能寫的人需要哪些知識?
- 前端開發到底需要掌握哪些知識前端
- 成為一名架構師得學習哪些知識?架構
- 轉:成為Java高階程式設計師需要掌握哪些?Java程式設計師
- 大資料工程師需要掌握的知識點大資料工程師
- 一個合格的Web前端工程師要掌握的知識點彙總!Web前端工程師
- 成為一名Java高階工程師你需要學什麼Java工程師
- 作為一名Java開發者應該掌握的基礎知識彙總!Java
- Linux運維工程師需要掌握哪些知識?Linux入門教程Linux運維工程師
- Java全棧工程師需要掌握哪些技術Java全棧工程師
- php各級工程師需要掌握的知識體系PHP工程師
- 關於《如何塑造自己成為一名合格的軟體工程師》的討論軟體工程工程師
- 人工智慧AI需要掌握哪些基礎知識?人工智慧AI
- 成為一名k8s專家需要掌握哪些知識?當我讀完k8s原始碼之後總結K8S原始碼
- 要成為架構師,你需要掌握這些知識體系!架構
- 前端工程師到底需要掌握哪些 HTTP 知識才能過好這一生?前端工程師HTTP
- iOS 效能調優,成為一名合格 iOS 程式設計師必須掌握iOS程式設計師
- 想成為一名物聯網工程師需要學習哪些知識?這套教程限時送工程師
- 如何成為一名合格的 C/C++ 開發者?C++
- 面試需要掌握的知識點面試
- DBA需要掌握的Shell知識
- 作為一名合格的JAVA架構師需要點亮那些技能樹?Java架構
- 前端修煉の道 | 如何成為一名合格前端開發工程師?前端工程師
- 從業資料分析,需要掌握python哪些知識?Python
- Linux命令有哪些知識點需要掌握?面試題Linux面試題
- 一名合格的前端開發工程師應該掌握的8個技能前端工程師
- JVM-Java工程師必須掌握的知識點JVMJava工程師
- java面試需要掌握知識點|掘金技術徵文Java面試
- 如何成為一名合格的資料產品經理?