首頁>Club>
4
回覆列表
  • 1 # IT人劉俊明

    作為一名從業多年的程式設計師,曾長期使用過Java語言,也出版過Java程式設計書籍,所以我來回答一下這個問題。

    Java語言的學習難點在學習的初期,越往後學習則越簡單,因為後期的學習難度已經不在於Java語言本身了,往往在於開發平臺、演算法設計、技術選型、技術驗證等方面。所以,學習Java語言的重點就在基礎部分,而基礎部分的重點就在於理解並建立面向物件的程式設計思想。

    Java面向物件程式設計思想的核心在於“抽象”,具體體現在類、物件、屬性和方法四個基本概念上,體現的形式還包含封裝、繼承和多型三個重要的面向物件特徵。所以說,學習Java的重點在於如何理解Java中的各種“抽象”。要想理解抽象,首先應該從程式設計過程開始,Java的程式設計過程有三步,分別是類的定義(設計)、物件的建立和方法的呼叫,這是Java程式設計的基本思路,也是首先應該建立的Java程式設計思想之一。

    圍繞Java的程式設計過程,透過大量的基礎性實驗,就會逐漸掌握類和物件之間的關係,這也就打開了學習Java程式設計的大門,接下來需要進一步學習封裝、繼承和多型等概念。另外,基礎部分還包括異常處理、IO、集合、序列化、多執行緒和網路程式設計基礎,學習這些內容沒有太多的訣竅,要想紮實的掌握這些內容唯有透過大量的實驗來解決。

    在學習完基礎部分之後,應該確定一個發展方向,比如Web開發、大資料開發、Android開發等,對於初學者來說,建議從Web開發方向開始。Web開發的知識結構相對比較健全,另外Web開發的崗位需求量也比較大,就業比較方便。Web開發需要學習Web元件開發、資料庫開發、分散式開發、框架開發(Spring系列)等內容,另外還需要學習前端開發的內容,包括Html、CSS和JavaScript,其中JavaScript目前的應用範圍逐漸拓展,建議重點學習一下。

  • 2 # 此生唯一

    一入技術深似海,日新月異拼命追!

    一開始學習JAVA,覺得彷彿給自己打開了一扇創造的大門,每天用學到的點點滴滴實現一個又一個的需求,很有成就感!賺的也比一般工薪族多一些!

    但是很快就厭倦了沒日沒夜的增刪改查,看著功能大相徑庭,其實內裡相差無幾,CV大法,改改物件名,改改方法名,很快就實現了一個需求!

    很快的就覺得公司不大行,配不上自己的“水平”,出去面試,專門找大公司,好公司,以為信手拈來,然而事實是不斷放低自己的要求,面試了很多公司都無疾而終,跪在的問題不是高併發,不是分散式,而是基本的排序演算法,基本的資料結構,基本的網路知識,JAVA執行原理等等這些平時用了千百遍,卻說不出所以然的東西!

    於是開始懷疑自己了,學JAVA到底學了什麼?增刪改查寫了幾百遍,這跟實習生寫三遍的差別在哪?快取指令只會set,get,遇到問題了怎麼辦?服務宕機,快取擊穿?jvm底層是什麼,你知道嗎?

    然後告訴自己,要熟悉底層,開始關注效能,可擴充套件性,如何最佳化,如何跟實習生拉開差距,不再是一個只會CV,只會增刪改的“大神”!

    這就是我幾年前的學習寫照,總是喜歡搞一些花裡胡哨的東西,到最後啥也沒學到!

    所以我在此建議 :

    ①,注重底層:jdk中基本的資料結構(比如hashmap,hashtable,concurrentHashmap,synchronizedMap區別是什麼?如何取捨?),jvm記憶體模型,記憶體結構,gc,併發包,反射等等!

    ②,不要想著啥都會:快取有好幾種,訊息中介軟體有好幾種,資料庫中介軟體有好幾種,微服務框架有好幾種,如果這個學一點那個學一點,有可能最後都只是掌握皮毛,實際中用不到很快就忘了,而且看的太多容易產生倦怠心裡,真真正正的搞懂幾個中的一個就行了!

    ④,不要三天打魚兩天曬網:學習是一輩子的事,只有保持足夠的熱情,付諸足夠的精力才能不被淘汰!

    ⑤,喜歡分享:以我自己為例,有時候有些概念比較模糊,心裡就想著要分享給別人,不能含糊,努力去弄懂,然後儘量用通俗易懂的話描述出來,這時候你會發現豁然開朗了,真正的會了!

    程式設計真的是要學習一輩的東西,分享讓我掌握得更牢靠,所以我會持續分享的,敬請關注。。

  • 中秋節和大豐收的關聯?
  • 河洛群俠傳人物排名?