回覆列表
  • 1 # bingun

    多看多練,切忌眼高手低,影片或書上看的東西一定要寫demo嘗試,然後去舉一反三,有能力了可以看看開源專案原始碼,都是從那個階段過來的,祝好

  • 2 # 首席分享官100

    首先,從事java開發這件事,是一件很有前景的工作,未來發展和工資收入都是比較有盼頭的。畢竟java經過了這麼多年的發展,現在已經非常成熟,並且不斷在隨著當今的趨勢在改變,java社群也是很有朝氣的社群。總之,選擇做java開發,肯定有未來的。

    新入門的java developer,最重要的還是要多學習java基礎,因為java基礎是整個java應用的根基,比如說spring框架其實就是基於java類的反射去實現的。多學習基礎知識,多動手,以後有了工作經驗之後就會發現,一些看上去高階的java知識,其實都是透過基礎的原理去實現的。

    還有一個很重要的,就是要學習java得程式設計思想----面向物件。用java的思想去看待現實世界和java程式碼世界,你會發現其樂無窮。而且java裡面還有很有非常有意思的一些理論和思想,有時間多學習,多上網查詢,以及會越來越強滴。

    平常自己學習,可以經常去一些比較有名的網站或者社群溜達溜達,看看那些程式設計大佬都是怎麼秀技術的。比如csdn、部落格園、掘金等等,多見識,多自己的眼界也是很有幫助的。

    java人加油。

  • 3 # 程式猿來導事

    新入門在老闆眼中你只會Hello word,但老闆為什麼會繼續聘用你。關鍵看中你的學習能力和領悟能力,再就是廉價好用。作為剛入門的你不要總想著提升程式設計能力,這個是個很寬泛的問題。實際上是怎麼熟練操作專案中每一個模組,模組中每一個專案API的呼叫,API的邏輯關係,然後利用業餘時間模仿寫出你們公司產品的的每一個模組的程式碼。只有帶著實際專案區練習,你才有實際的進步,不然整天敲著無用的程式碼,閉門造著自認為有價值的豪車。

  • 4 # IT人劉俊明

    Java語言在整個軟體開發領域有廣泛的應用,包括Web開發、大資料開發、Android開發和各種後端開發,目前也有大量的開發團隊在採用Java開發方案,所以從就業的角度角度來說,學習Java是個不錯的選擇。

    對於新入門的Java程式設計師來說,應該已經具備了基本的程式設計能力,對於Java中的抽象已經具備了一定的理解,包括掌握了封裝、繼承和多型等重要的面向物件基本概念。在這個基礎上要想提高Java的程式設計能力,可以從以下幾個方面入手:

    第一:學習Java虛擬機器知識。要想系統深入的瞭解Java語言中的各種概念就需要了解JVM(Java虛擬機器)的體系結構和設計模式,JVM是Java語言的容器,Java語言的所有特性都是由JVM所提供的,所以系統的學習JVM對於理解Java語言具有重要的意義,尤其在未來面對一些系統級問題時會更加自信。

    第二:提升程式碼量。對於初級程式設計師來說,要想提升自己的程式設計能力,一個最為有效直接的方式就是提升程式碼量。一方面可以透過崗位任務來完成,另一方面可以透過自主實驗來完成。提升程式碼量的過程不僅能夠加強自己的程式設計能力,也能提升自己除錯程式的能力。

    第三:圍繞主攻方向展開學習。Java程式設計師往往都有一個自己的主攻方向,比如Web開發、大資料開發等等。對於Web開發來說應該圍繞Web元件的開發來逐漸展開自己的知識面,包括Web容器的理解、框架的理解、前端處理過程的理解(JavaScript)等。對於大資料方向來說,應該從理解大資料平臺開始(Hadoop、Spark),進而掌握平臺提供的Java API。

    Java中可以系統學習的內容非常多,比如併發機制、事務處理機制、安全機制、訊息傳遞機制、分散式處理機制、資源管理機制等等,這些內容都需要進行深入的瞭解。

  • 5 # 此生唯一

    一定要注重基礎,曾經我也犯了這樣的錯,只想著掌握最新的技術,花裡胡哨的學了很多東西,但是論其原理,卻一竅不通,很難有所提高!

    所以JAVA的提升一定是從掌握基礎開始的。。

    1,計算機基礎:服務間到底如何通訊?七層協議知道嗎?TCP/IP是啥?三次握手,四次揮手知道嗎?HTTP長短連線知道嗎,如何選擇?

    2,基本的資料結構:八大基礎型別知道嗎?自動拆裝箱機制?new Integer(127)永遠得到同一個物件,new Integer(200)卻是不同的物件,知道為啥嗎?arraylist的擴容瞭解嗎?hashMap擴容為什麼會有執行緒安全問題?原本的資料結構是什麼樣的(陣列,連結串列)?JAVA8中為什麼加入了紅黑樹?SynchronizedHashMap和concurrentHashmap的區別?等等。。。

    3,基本的演算法:工作中遞迴,迴圈,排序用的很多,你都會嗎?mysql涉及到的索引演算法是什麼?hash演算法為什麼高效?

    4,jvm:記憶體模型,記憶體結構,物件是否能回收,gc roots怎麼選擇?垃圾收集器有哪些方式,如何選擇?選擇依據是什麼?最大吞吐量和延遲時間是什麼?jvm引數怎麼設定?怎麼調優?

    就像寫文章需要學會更多的美好詞彙,基礎知識就是掌握JAVA進階技術的詞彙!

    進階篇。。。

    1,框架:spring,springboot,springcloud,AOP,mybatis(持久層框架),druid(服務監控,主要是sql),mycat(分庫分表中介軟體),

    2,快取:redis,memcache,ehcache區別和各自優點是什麼,怎麼選擇?

    3,服務間通訊:rpc呼叫,rest呼叫區別與選擇?訊息中介軟體(mq,redis,kafka選擇)!

    4,非業務元件:工作流引擎(activity等),日誌元件,遠端連線linux工具(putty等),jstack分析工具,postman模擬請求,docker2boot(windows上模擬分散式系統),負載均衡nginx!

    5,調優:jvm,資料庫,日誌收集,快取調優等等!

    總之,良好的基礎,決定了你在JAVA領域走的多遠,學的多深!

  • 中秋節和大豐收的關聯?
  • 孩子中考壓力大,怎樣解壓呢?