來(lái)源:達(dá)內(nèi)JAVA培訓(xùn) 2018-06-13 16:32:32
作為剛剛進(jìn)入Java領(lǐng)域的新同學(xué),無(wú)論是高校的畢業(yè)大學(xué)生,還是有志轉(zhuǎn)行的在職人員,都面臨著諸多如下的困惑。
l 如何學(xué)習(xí)Java語(yǔ)言?
l 在Java學(xué)習(xí)過(guò)程中需要掌握哪些技能?
l 各大公司對(duì)Java開(kāi)發(fā)的要求是什么?
l Java 學(xué)習(xí)過(guò)程中有哪些注意事項(xiàng)?
l Java 工程師的職業(yè)發(fā)展規(guī)劃是什么?
我把Java 的學(xué)習(xí)過(guò)程分為4個(gè)階段:理論階段、開(kāi)發(fā)階段、進(jìn)階階段以及實(shí)戰(zhàn)階段。
理論階段
在具體談?wù)揓ava知識(shí)點(diǎn)之前,我想先跟同學(xué)們聊聊Java 語(yǔ)言自身的一些特點(diǎn)、生態(tài)系統(tǒng)以及適用的場(chǎng)景,這有助于我們更好的學(xué)習(xí)語(yǔ)言本身。
首先,我們從Java 語(yǔ)言自身的實(shí)現(xiàn)機(jī)制來(lái)聊聊Java 語(yǔ)言的一些特性:
面向?qū)ο螅篔ava 是一門(mén)面向?qū)ο蟮木幊陶Z(yǔ)言,封裝、繼承、多態(tài)這些特性使得Java 語(yǔ)言適用于大型軟件系統(tǒng)的研發(fā)。
跨平臺(tái):這是Java 最重要的特性之一,由于有虛擬機(jī)的支持,Java 代碼可以無(wú)縫運(yùn)行在任何操作系統(tǒng)中,無(wú)需重新編譯;
透明內(nèi)存管理:做C/C++的同學(xué)最頭疼的事情就是內(nèi)存泄漏問(wèn)題,在Java中,由于虛擬機(jī)會(huì)自動(dòng)回收不再使用的內(nèi)存空間,所以程序員無(wú)需顯式回收內(nèi)存。
足夠的性能:性能一直是Java為人詬病的問(wèn)題之一,但是在java6 之后,隨著JVM虛擬機(jī)編譯優(yōu)化技術(shù)的不斷進(jìn)步,垃圾回收算法的不斷優(yōu)化,Java的性能已經(jīng)能夠勝任絕大多數(shù)系統(tǒng)的要求,甚至在性能要求極為苛刻的底層系統(tǒng)中,我們也能看到Java的身影。
此外,Java 還有完善的生態(tài)系統(tǒng):
Java 擁有數(shù)量眾多的第三方類(lèi)庫(kù),作為一個(gè)開(kāi)發(fā)者,你會(huì)發(fā)現(xiàn)作為一名Java程序員是一件很幸福的事情,因?yàn)楹芏嗍虑閯e人都已經(jīng)幫你做好了,你需要做的只是把別人造好的輪子組裝起來(lái),實(shí)現(xiàn)你的業(yè)務(wù)需求。
Java 擁有非常完善的開(kāi)發(fā)環(huán)境Eclipse,集成了非常多實(shí)用的功能,且操作界面非常友好。
Java 有非常多優(yōu)秀的框架,基于這些框架,可以快速開(kāi)發(fā)出一個(gè)可擴(kuò)展的業(yè)務(wù)系統(tǒng)。
Java 擁有非;钴S的社區(qū)和論壇,當(dāng)你遇到問(wèn)題的時(shí)候,你可以快速的得到其他人的幫助。
介紹了Java 的這些優(yōu)勢(shì),Java 到底適用在哪些系統(tǒng)研發(fā)中?
——Web系統(tǒng)
——移動(dòng)應(yīng)用服務(wù)端以及安卓客戶(hù)端開(kāi)發(fā)
——中間件系統(tǒng)
——后端系統(tǒng):例如大數(shù)據(jù)相關(guān)系統(tǒng)
在理論學(xué)習(xí)階段,同學(xué)們首先應(yīng)該從Java的基礎(chǔ)語(yǔ)法開(kāi)始學(xué)習(xí),包括變量聲明、條件判斷、循環(huán)、函數(shù)編寫(xiě)。此外,還應(yīng)該了解Web相關(guān)的基礎(chǔ)知識(shí),例如http 協(xié)議、Web應(yīng)用的B\S架構(gòu)。數(shù)據(jù)庫(kù)是Java 應(yīng)用系統(tǒng)不可或缺的持久化組件,在理論學(xué)習(xí)階段,需要學(xué)習(xí)SQL語(yǔ)法相關(guān)知識(shí)。這里有兩點(diǎn)小建議:
1、可以通過(guò)完成一些算法題目,來(lái)鞏固Java語(yǔ)法學(xué)習(xí)的成果;
2、好記性不如爛筆頭:多做筆記,勤練習(xí);
開(kāi)發(fā)階段
經(jīng)過(guò)理論階段的學(xué)習(xí),你應(yīng)該已經(jīng)掌握了Java 基礎(chǔ)知識(shí)。進(jìn)入開(kāi)發(fā)階段,則需要掌握在日常實(shí)際Java項(xiàng)目開(kāi)發(fā)過(guò)程中需要用到的一些技能。
首先工欲善其事,必先利其器,所以首先要熟練掌握J(rèn)ava的常用開(kāi)發(fā)工具和開(kāi)發(fā)環(huán)境。
Maven是目前大型公司常用的Java 夾包管理軟件,可以幫助開(kāi)發(fā)者解決Java 夾包之間的依賴(lài)和版本管理。
Git作為代碼倉(cāng)庫(kù)管理軟件,可以幫助我們實(shí)現(xiàn)代碼版本、分支管理。
Ecplise是目前Java使用最廣泛的開(kāi)發(fā)環(huán)境,它集成了Maven、Git這些常用的插件。
其次,知識(shí)學(xué)習(xí)方面,需要掌握面向?qū)ο蟮南嚓P(guān)知識(shí),例如類(lèi)和對(duì)象的定義方法、如何實(shí)現(xiàn)對(duì)象的繼承、如何基于接口實(shí)現(xiàn)多態(tài)等;Java 容器在開(kāi)發(fā)過(guò)程中也使用非常頻繁,包括List、Set、Map等,最好能夠了解每種容器的實(shí)現(xiàn)機(jī)制以及適用場(chǎng)景。Web 方面,同學(xué)們需要掌握Servlet編程,包括Servlt config、context編寫(xiě);數(shù)據(jù)庫(kù)方面,同學(xué)們需要掌握J(rèn)DBC,能夠基于JDBC實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增、刪、改、查。
最后,聊聊這個(gè)階段的學(xué)習(xí)容易出現(xiàn)的誤區(qū):
l 不要嘗試一次性通過(guò)編譯,遇到編譯錯(cuò)誤,很多同學(xué)會(huì)很焦躁,實(shí)際上錯(cuò)誤之間有依賴(lài),解決一個(gè)錯(cuò)誤,可能后面的錯(cuò)誤就會(huì)自動(dòng)解除,千萬(wàn)不要被大量的錯(cuò)誤嚇倒。
相關(guān)推薦:
小升初試題、期中期末題、小學(xué)奧數(shù)題
盡在奧數(shù)網(wǎng)公眾號(hào)
歡迎使用手機(jī)、平板等移動(dòng)設(shè)備訪問(wèn)幼教網(wǎng),幼兒教育我們一路陪伴同行!>>點(diǎn)擊查看