初學者應該如何學習好java
初學者應該如何學習好java
作為剛剛進入Java領域的初學者,無論是高校的畢業(yè)大學生,還是有志轉(zhuǎn)行的在職人員,都面臨著諸多如下的困惑。為此,小編給大家整理了初學者學習好java的方法,希望可以幫到你!
初學者學習好java的方法
理論階段
在具體談論Java知識點之前,我想先跟同學們聊聊Java 語言自身的一些特點、生態(tài)系統(tǒng)以及適用的場景,這有助于我們更好的學習語言本身。
首先,我們從Java 語言自身的實現(xiàn)機制來聊聊Java 語言的一些特性:
面向?qū)ο螅篔ava 是一門面向?qū)ο蟮木幊陶Z言,封裝、繼承、多態(tài)這些特性使得Java 語言適用于大型軟件系統(tǒng)的研發(fā)。
跨平臺:這是Java 最重要的特性之一,由于有虛擬機的支持,Java 代碼可以無縫運行在任何操作系統(tǒng)中,無需重新編譯;
透明內(nèi)存管理:做C/C++的同學最頭疼的事情就是內(nèi)存泄漏問題,在Java中,由于虛擬機會自動回收不再使用的內(nèi)存空間,所以程序員無需顯式回收內(nèi)存。
足夠的性能:性能一直是Java為人詬病的問題之一,但是在java6 之后,隨著JVM虛擬機編譯優(yōu)化技術的不斷進步,垃圾回收算法的不斷優(yōu)化,Java的性能已經(jīng)能夠勝任絕大多數(shù)系統(tǒng)的要求,甚至在性能要求極為苛刻的底層系統(tǒng)中,我們也能看到Java的身影。
此外,Java 還有完善的生態(tài)系統(tǒng):
Java 擁有數(shù)量眾多的第三方類庫,作為一個開發(fā)者,你會發(fā)現(xiàn)作為一名Java程序員是一件很幸福的事情,因為很多事情別人都已經(jīng)幫你做好了,你需要做的只是把別人造好的輪子組裝起來,實現(xiàn)你的業(yè)務需求。
Java 擁有非常完善的開發(fā)環(huán)境Eclipse,集成了非常多實用的功能,且操作界面非常友好。
Java 有非常多優(yōu)秀的框架,基于這些框架,可以快速開發(fā)出一個可擴展的業(yè)務系統(tǒng)。
Java 擁有非?;钴S的社區(qū)和論壇,當你遇到問題的時候,你可以快速的得到其他人的幫助。
介紹了Java 的這些優(yōu)勢,Java 到底適用在哪些系統(tǒng)研發(fā)中?
——Web系統(tǒng)
——移動應用服務端以及安卓客戶端開發(fā)
——中間件系統(tǒng)
——后端系統(tǒng):例如大數(shù)據(jù)相關系統(tǒng)
在理論學習階段,同學們首先應該從Java的基礎語法開始學習,包括變量聲明、條件判斷、循環(huán)、函數(shù)編寫。此外,還應該了解Web相關的基礎知識,例如http 協(xié)議、Web應用的B\S架構。數(shù)據(jù)庫是Java 應用系統(tǒng)不可或缺的持久化組件,在理論學習階段,需要學習SQL語法相關知識。這里有兩點小建議:
1、可以通過完成一些算法題目,來鞏固Java語法學習的成果;
2、好記性不如爛筆頭:多做筆記,勤練習;
開發(fā)階段
經(jīng)過理論階段的學習,你應該已經(jīng)掌握了Java 基礎知識。進入開發(fā)階段,則需要掌握在日常實際Java項目開發(fā)過程中需要用到的一些技能。
首先工欲善其事,必先利其器,所以首先要熟練掌握Java的常用開發(fā)工具和開發(fā)環(huán)境。
Maven是目前大型公司常用的Java 夾包管理軟件,可以幫助開發(fā)者解決Java 夾包之間的依賴和版本管理。
Git作為代碼倉庫管理軟件,可以幫助我們實現(xiàn)代碼版本、分支管理。
Ecplise是目前Java使用最廣泛的開發(fā)環(huán)境,它集成了Maven、Git這些常用的插件。
其次,知識學習方面,需要掌握面向?qū)ο蟮南嚓P知識,例如類和對象的定義方法、如何實現(xiàn)對象的繼承、如何基于接口實現(xiàn)多態(tài)等;Java 容器在開發(fā)過程中也使用非常頻繁,包括List、Set、Map等,最好能夠了解每種容器的實現(xiàn)機制以及適用場景。Web 方面,同學們需要掌握Servlet編程,包括Servlt config、context編寫;數(shù)據(jù)庫方面,同學們需要掌握JDBC,能夠基于JDBC實現(xiàn)數(shù)據(jù)庫的增、刪、改、查。
最后,聊聊這個階段的學習容易出現(xiàn)的誤區(qū):
l 不要嘗試一次性通過編譯,遇到編譯錯誤,很多同學會很焦躁,實際上錯誤之間有依賴,解決一個錯誤,可能后面的錯誤就會自動解除,千萬不要被大量的錯誤嚇倒。
l 不要copy代碼,我覺得程序員一個非常不好的習慣就是拷貝代碼,尤其在入門階段,多嘗試親手敲代碼。
l 注意編程規(guī)范:同學們要從代碼學習開始,就注意編程規(guī)范,例如變量名定義規(guī)則、函數(shù)名定義規(guī)則,養(yǎng)成良好的編程習慣。
進階階段
掌握了基本的開發(fā)技能,進階階段則主要鍛煉開發(fā)者在實際典型業(yè)務場景下,提高開發(fā)效率,解決實際問題的能力。
在Web基礎方面,要掌握Cookies和Session、轉(zhuǎn)發(fā)和重定向、過濾器、監(jiān)聽器的相關知識;
數(shù)據(jù)庫方面,要學習數(shù)據(jù)庫連接池的使用方法,為什么要使用數(shù)據(jù)庫連接池以及數(shù)據(jù)庫死鎖、數(shù)據(jù)庫SQL 注入相關概念。
在Java 語言方面,要開始學習Java 應用框架,例如mybatis、Spting,這些框架可以幫助我們更加高效的構建Java 工程。在框架學習過程中,我認為不僅要學習如何基于框架開發(fā)系統(tǒng),更要注重框架自身設計思想,這對于開發(fā)者提升自己的代碼架構能力是非常有幫助的。
在進階階段,要注意以下內(nèi)容:
l 以問題為導向: Java 知識繁雜,以問題為導向,作為切入點,能夠提高Java 學習的效率;
l 特定場景下的需求解決:每一種架構都有典型的應用場景,要結(jié)合實際應用場景去分析和解決問題;
l 利用google:作為一名程序員,遇到未知問題是很正常的事情,關鍵利用好google,社區(qū)、論壇;
l 性能的持續(xù)改進和優(yōu)化:在進階階段,同學們應該要具備基本的性能調(diào)優(yōu)能力,關注性能管理;
實戰(zhàn)階段
計算機編程是一個非常注重實戰(zhàn)的領域,在Java學習過程中,必須要有一個實戰(zhàn)項目,來幫助大家鞏固之前的學習成果,這對于后續(xù)快速上手公司的實際業(yè)務有非常大的幫助。
你可以借助一些云平臺,來熟悉環(huán)境搭建部署的過程。建議大家學習Docker的相關技術,微服務是目前系統(tǒng)設計中比較流行的架構,借助Docker快速部署、服務發(fā)現(xiàn)、服務編排的特性,可以幫助我們實現(xiàn)系統(tǒng)的快速發(fā)布和彈性擴展。
在實戰(zhàn)階段,應該重點關注以下幾點:
l 文檔編寫:編寫詳細設計文檔也是程序員必須具備的一項技能,要學習設計文檔的編寫格式,編寫規(guī)范。
l 設計模式: 同學們在實戰(zhàn)階段,代碼編寫時要注意設計模式,盡可能提高代碼的可讀性、可重復使用性。
l 邊界條件的校驗和處理:在實際開發(fā)過程中,系統(tǒng)出現(xiàn)最多的問題都集中在邊界條件的校驗和處理上,同學們在實際開發(fā)過程中,應該要有意識的考慮這些問題。
初學者學習好java的建議
1首先,我們必須要有一個明確的方向
我們必須學習了解Java的基礎,不要急于求成,基礎概念掌握在學習實戰(zhàn)項目開發(fā)。直接入手項目不太實際,有的人不學基礎,一看代碼覺得java很難就放棄了。
所謂磨刀不誤砍柴工,扎實掌握了基礎,按階段的學習,堅持下來能力就會不斷提高。還有請千萬不要把你的學習Java之路和其它計算機技術分開看待,技術的聯(lián)系往往是千絲萬縷的,對于“CLASSPATH要怎么設置啊”、“跪求JDK下載地址”等等問題,你不該問,因為Internet上太多答案了,甚至換個角度說,你是不是還不適合直接學習編程?
2再規(guī)劃一個學習的思路,制定好學習任務
記住,網(wǎng)絡上學習Java的資料很多,但基本不夠系統(tǒng),你應該系統(tǒng)的學習Java的基礎。準備好你的學習環(huán)境,很簡單,安裝JDK,然后用類似UItraEdit,EditPlus的文本編輯器配置你的學習環(huán)境。
初學Java,不建議用IDE工具,通過一行行的敲代碼,你會碰到很多問題,只有這樣,你才能學會怎么樣解決問題,并加深自己對Java的理解。
3最后,不要光看不練
我們需要的是理解,動手去做才能學到東西,學到技能,如果看了好幾集視頻,結(jié)果電腦上連java環(huán)境都沒搭建,這樣下來,很快就忘了。學習Java的過程雖然辛苦,但是又處處有精彩!
學習過程中的心態(tài)一定要保持專一,網(wǎng)上關于語言間的“PK”到處都是,別被浮躁影響!認準了Java,你就堅持!客服心魔,恒心最終會給你回報的!
永遠記?。鹤允贾两K,實踐是學習Java技術歷程中最極其重要的一環(huán)。脫離了實踐,是學不好實踐的。要學的東西很多,勤奮是金!
初學者學習好java的技巧
1.學習JAVA的原理
了解JAVA的原理,才有可能真正體會JAVA的一切,學習任何事情,只要能掌握原理,就會比較順利。
2.學習對象導向的思維
學會了語言,并不代表就可以設計出好的對象導向系統(tǒng)架構。想要成為對象導向的專家,往往需要多看相關的書、多觀摩別人的程序、多寫程序??傊鶄€字——多看,多學,多練。
3.學習API
學會JAVA語言之后,還需要學會一些API才能寫出有用的程序。JAVA的API非常多,必須規(guī)劃好一個學習路徑,才不會在浩瀚的API大海中迷失。
4.學習開發(fā)工具的用法
只用JDK,是很難寫出大型程序的,所以通常程序員JBuilder/VisualAge/VisualCafe等工具。
猜你喜歡: