Java的技術(shù)體系是非常龐大的,需要我們學(xué)習(xí)的技術(shù)非常多效床,往往很多初學(xué)的人睹酌,通過互聯(lián)網(wǎng)查閱了一個龐大的學(xué)習(xí)列表,然后不知道如何下手剩檀。網(wǎng)上很多大牛列的技術(shù)不是不重要憋沿,但是掌握住企業(yè)應(yīng)用的Java的核心技術(shù),快速上手沪猴,是一種高效的學(xué)習(xí)手段辐啄。結(jié)合本人十余年的項目研發(fā)和帶人經(jīng)驗采章,整理出如下方面。
首先JavaSE是核心壶辜,這是初學(xué)Java人員應(yīng)最先接觸學(xué)習(xí)的部分悯舟。Java的運(yùn)行原理,jdk的配置砸民,與jre的區(qū)別抵怎,基本數(shù)據(jù)類型,流程控制(順序結(jié)構(gòu)岭参、選擇結(jié)構(gòu)反惕、循環(huán)結(jié)構(gòu)),數(shù)組冗荸、集合框架承璃,異常處理等,這些都是比較容易學(xué)習(xí)的蚌本,需要多練習(xí)盔粹,在聯(lián)系過程中加強(qiáng)理解。面向?qū)ο蟛糠质荍ava初學(xué)者程癌,尤其是沒有任何編程語言基礎(chǔ)的學(xué)起來有些難度舷嗡,類、對象嵌莉、繼承进萄、封裝、多態(tài)等技術(shù)點(diǎn)需要多參照些現(xiàn)有的設(shè)計模型锐峭,學(xué)習(xí)設(shè)計的思路中鼠。諸如工廠模式、觀察者模式沿癞、代理模式等重要的設(shè)計模式也是需要學(xué)習(xí)的援雇,否則在將來應(yīng)用框架時就會只知其然,不知其所以然椎扬。IO流惫搏、多線程也一定需要學(xué)習(xí),尤其是XML蚕涤、JSON等文件格式一定要掌握筐赔,這在數(shù)據(jù)交互時常用。
其次是數(shù)據(jù)庫知識揖铜,作為初級Java程序員必須要掌握一種常用的關(guān)系型書庫的應(yīng)用茴丰,如MySQL或oracle等,數(shù)據(jù)庫對象諸如表、視圖等的創(chuàng)建较沪、增刪改查語句鳞绕,尤其是查詢,在企業(yè)中經(jīng)常需要從十幾張表尸曼、或幾十張表中查詢數(shù)據(jù)们何,所以對于如何進(jìn)行內(nèi)連接、外連接控轿、以及聯(lián)合查詢等一定要掌握冤竹,另外對于索引、事務(wù)等也要掌握。
第三是Java Web部分,由于Java主要做web開發(fā)嵌纲,一些前端技術(shù)HTML3、CSS5钟病,javaScript,jQuery等這些不見得要學(xué)得有多深入刚梭,但是必須要掌握肠阱,tomcat、jsp朴读,以及和數(shù)據(jù)庫的交互這些都是必須要掌握的屹徘。
第四是框架部分,主流的ORM框架有Mybatis衅金、hibernate噪伊,MVC框架有Spring MVC、Struts2等氮唯,可以優(yōu)先掌握主流的SSM框架組合鉴吹,框架的學(xué)習(xí)有人認(rèn)為很簡單,就按照規(guī)定惩琉、規(guī)范調(diào)用豆励、使用唄,初學(xué)者可以先學(xué)習(xí)如何使用這些框架琳水,然后慢慢的探究內(nèi)部原理,因為框架是技術(shù)封裝般堆、簡化的產(chǎn)物在孝。
這里面有些同類型的技術(shù)比如hibernate,如果會使用Mybatis了淮摔,那么上手就會很容易私沮,同理如果Spring MVC框架應(yīng)用熟練了,那么Struts2框架其實就可以現(xiàn)學(xué)現(xiàn)賣了和橙。
一個web程序包含的模塊很多仔燕,不一定包括所有模塊造垛。
系統(tǒng)模塊:Windows、Linux系統(tǒng)等晰搀。
存儲模塊:這里既包括關(guān)系型數(shù)據(jù)庫MySQL五辽、oracle等,也包括內(nèi)存數(shù)據(jù)庫redis外恕、memcached等杆逗。
程序模塊:還可以細(xì)化成持久化模塊、業(yè)務(wù)邏輯模塊鳞疲、表現(xiàn)層模塊罪郊,MVC框架的實現(xiàn)。
搜索模塊:應(yīng)用solr或Elasticsearch等尚洽。
服務(wù)器模塊:tomcat悔橄、weblogic、Resion等
中間件模塊:nginx腺毫、MQ消息隊列技術(shù)等癣疟。
在這里額外說一下技術(shù)和技能的區(qū)別,初學(xué)者學(xué)一個技術(shù)可能很容易拴曲,但是這個技術(shù)如何在企業(yè)開發(fā)環(huán)境中應(yīng)用這就是技能了争舞,所以在學(xué)習(xí)的同時,要多應(yīng)用澈灼,最好通過一些案例項目來學(xué)習(xí)竞川,這樣既高效,學(xué)習(xí)的還扎實叁熔。
補(bǔ)充一點(diǎn)委乌,現(xiàn)在的應(yīng)用級別越來越大,海量數(shù)據(jù)荣回、高并發(fā)是處理的重點(diǎn)遭贸,單應(yīng)用的程序已經(jīng)無法滿足要求,分布式是趨勢心软,Dubbo壕吹、Zookeeper、Docker删铃、SpringBoot耳贬、SpringCloud、MyCat等技術(shù)猎唁,包括上面系統(tǒng)模塊里提到的一些技術(shù)都要學(xué)習(xí)的咒劲。