[轉(zhuǎn)載]初級Java程序員的學(xué)習(xí)路線

作者:暗滅

鏈接:初級Java程序員的學(xué)習(xí)路線

來源:知乎

初級Java程序員的學(xué)習(xí)路線

知乎總是建議我修改內(nèi)容焚廊,說我騙贊。

算了习劫,直接發(fā)專欄好了咆瘟。

說過很多遍這個話題了。重復(fù)一遍诽里,再說一次袒餐。

第一。 Java語法的學(xué)習(xí)谤狡。? 3天

你需要會這些:

1. String灸眼,Integer,Long墓懂,Array焰宣,List,Map會用就夠了捕仔。

2. Interface和Impl能分得清就夠了匕积,永遠不要去用繼承。

3.Model榜跌,也是Bean闪唆,記著Model里只有Get和Set方法。貧血模型钓葫。

4.try-catch,Throwable, Error? ? ? 5.函數(shù)悄蕾,參數(shù),返回值

你一定不要現(xiàn)在去看這些:

1.NIO础浮,Thread帆调,Extend,Abstract豆同,GUI贷帮,GC

2.各種JDK的源碼,各種算法的實現(xiàn)

第二诱告。面向?qū)ο蟾拍畹睦斫夂蛯W(xué)習(xí) 3天

你需要會這些:

1.屬性和方法

2.private/public

3.static final

4.ArrayList,Set,Map,Array的取值精居,長度锄禽,遍歷醋粟。StringBuffer

5.null對象练链,Null指針

6.構(gòu)造函數(shù)

7.this

8.泛型

你一定不要這個時候去看這些:

1.protect

2.重載

3.多態(tài)

4.內(nèi)部類

5.socket

6.file

7.stream

第三。常用的Util? 3天

你需要會這些:

1.StringUtils

2.CollectionUtils

3.log4j

4.httpClient

5.calendar

你一定不要去看這些:

第四拣挪。數(shù)據(jù)庫? ? ? 9天

你需要會這些:

1.JDBC

2.Mybatis

3.Hibernate

4.增刪改查一個表佛吓,排序宵晚,分頁,簡單的聯(lián)表查詢

5.索引维雇,思考一下什么樣的表建索引淤刃,什么是索引

別擔(dān)心,以上三種都是一理通而百理融

第五吱型。 單元測試? ? 3天

你需要會這些

1.Junit @Test逸贾,@Ignore

2.log4j info,warning,error

3.Eclispe debug,Step,Step in ,Step Out,run

你一定不要學(xué)這些

第六。? Spring? ? 3天

你需要會這些

1.Spring Bean津滞,Property铝侵,Map,List初始化值

2.Autowired

3.Annonation&配置文件

4.Spring Version

5.Spring MVC,@Method @Controller

你一定不要學(xué)這些

第七触徐。Maven 5天

你需要會這些

1.clean,install,deploy,assembly

2.snapshot/release

3.module

4.subeclipse

5.jetty:run

============================過段時間更新以下內(nèi)容==================

第八 Jsp? 3天

用到Jsp主要有兩個方面咪鲜,一種是傳統(tǒng)的后臺程序員套頁面的方式,一種是直接生成Json格式的數(shù)據(jù)撞鹉。? ? ? 受限于Json無法提供SEO疟丙,所以在需要SEO的時候還是得提供套頁面的方式。? ? ? 生成Json的方式有很多種孔祸,我還是喜歡用Json tag-lib.

你需要了解的是:

1.C標(biāo)簽

2.自定義Tag

3.include

4.給靜態(tài)資源加版本號

5.WEB容器未更新Jsp的時候隆敢,Touch一下

你一定不要去學(xué)這些:

1.在Jsp里寫任何Java代碼,包括但不限于是Mysql

第九 WEB? 10天

馬丹這里的WEB我寫的是什么意思崔慧,我忘記了拂蝎。? ? ? ? 大概是SpringMVC的意思?? ? ? ? 反正? ? ? ? 你需要了解這些:

1.web.xml

2.spring的配置文件

3.統(tǒng)一設(shè)置成utf8的編碼

4.filter

5.攔截器

6.Controller

7.http協(xié)議

8.Http-head content-type application/json x-www-form-urlencoded

9.file的上傳

10.圖片的上傳

你一定不要去了解這些:

1.Struts

22.play

3.webService

4.servlet

第十 Tomcat/Jetty 5天

你需要了解這些:

1.內(nèi)存和JDK參數(shù)的配置

2.指定配置文件的方式部署惶室,docBase

3.日志的配置 acces.log stdout.log.catalina.out之類的 stderr.log

4.寫腳本温自,找出慢查詢,cat|awk

5.理解一個請求分過來之后皇钞,怎么分解響應(yīng)時間悼泌,怎么去查找性能瓶頸

你不需要了解這些:

1.一個Tomcat或者是Jetty下部署多個項目

2.Jetty的嵌入運行方式

第十一 Cookie? ? 3天

關(guān)于Cookie啊,最常用的有兩個地方夹界,一個是統(tǒng)計馆里,一個是登錄。

所以你需要了解的是這些:

1.Cookie的大小

2.Cookie的傳輸方式

3.如何獲取到Cookie,如果Cookie中有同名的參數(shù)鸠踪,會接收到什么丙者。

4.為什么要用Cookie來代替Session做用戶的登錄標(biāo)記

5.Cookie的失效時間

6.清除Cookie

你不需要了解這些:

第十二? Shell 10天

Shell的概念很大,所以這里只列出來現(xiàn)階段你最應(yīng)該會的東西

你需要了解的是:? ? ? ? 1.vim 編碼模式营密,命令模式械媒,正查,倒查评汰,刪除一行纷捞,移至行尾

2.cat| more 這種是最覺見的日志瀏覽方式,cat|grep 用來定位Bug的時候最常用的

3.grep -A -B? 等被去,以及如果Cat+Grep定位多個文件主儡,怎么去查找他們是在哪個文件夾下。4.ls,cd,mkdir,mv,cp,scp,chown,chmod

5.top,free,vmstat,ps,iostat,netstat

你不需要了解的是:

1.馬丹编振,不知道哪些不該了解缀辩,Shell的東西只要跟實用的都可以多了解

第十三? SVN/Git? 5天

對于后端程序員來講,我還是喜歡SVN踪央。? ? ? ? ? Git使用與否臀玄,完全看個人喜好。有很多原因畅蹂,這里不說健无。

你需要了解這些:

1.SVN的標(biāo)準(zhǔn)目錄:trunk/tags/branches

2.commit,update,revert,history

3.Maven的Release插件 release:prepare release:perform, release:rollback

4.Tag的管理 always tag/always trunk的開發(fā)方式

5.Bug出現(xiàn)后,如果和當(dāng)前開發(fā)的項目有沖突液斜,該如何去打Tag累贤,怎么合并代碼

6.發(fā)布失敗后怎么回滾。

7.svn版本號怎么生成的

8.clean

你一定不要去了解這些:

1.不知道哪些不該了解少漆,不過clock這種操作我建議永遠不要用

2.還有合并代碼這種事臼膏,我也覺得永遠不要用,盡量保證你的代碼結(jié)構(gòu)很好示损,而不是想辦法讓合并代碼更簡單渗磅。

第十四? Json/Gson/JsonTag-lib? 5天

終于到了Json,過了300贊更新的內(nèi)容就完工了~~? ? ? ? ? Json是一個神器检访,現(xiàn)在是有yaml? 無所謂了始鱼,不太影響。Json統(tǒng)治互聯(lián)網(wǎng)已經(jīng)快7年了脆贵。

你應(yīng)該了解這些:

1.json的 string,number,object,array

2.json的轉(zhuǎn)義

3.怎么樣定義出來一個合理的結(jié)構(gòu)医清,是用array里包含一個Object,還是用一個大的Object卖氨,里面的Key是ID会烙,Value是一個Object负懦?是直接用 sex:male 還是用 name:sex, value:male?

4.Gson在Java和Json中的基本類型轉(zhuǎn)換 fromjson和tojson

5. Gson怎么轉(zhuǎn)換自定義的對象,和嵌套的對象(這就是Java最煩人的地方持搜,如果是Groovy或者是Python哪用得著這么麻煩)

6.Json-taglib里的常用標(biāo)簽密似,怎么將一個ID轉(zhuǎn)換成Number,怎么轉(zhuǎn)換成String

7.編碼

你不應(yīng)該去了解:

1.fastjson?我忘記了葫盼。用Gson就很好了

2.JSONObject還是什么來著?不記得了村斟。? ? ? ? ? 其實這段有點扯贫导,因為你愛用什么我管不著,我也分不清具體哪個好蟆盹,哪個壞孩灯,但是我自己的偏好就是這樣的。所以跟著我的必須只能用Gson來寫逾滥。除非哪天能夠說服我說峰档,老大,有一個XXX比Gson更好學(xué)寨昙。

這個其實是工程師的天性讥巡,完全不必覺得你的領(lǐng)導(dǎo)在打壓你的積極性。我見過的優(yōu)秀的工程師舔哪,從來都是主動要求在項目中嘗試各種新的激進的技術(shù)欢顷,而Leader往往都是要權(quán)衡N多內(nèi)容。

好了~~~300贊還算好捉蚤,很容易突破了抬驴。我們看看能不能3000贊見~

============================過段時間更新以下內(nèi)容==================

第十五? REST

第十六? Jenkins

第十七? nexus

第十八? Tiles

第十九? Nginx

第二十? Memcache/Redis

第二十一 Refact

============================過段時間更新以下內(nèi)容==================? ? ? ? ? 第二十二? 響應(yīng)時間分析

第二十三? 內(nèi)存,CPU缆巧,硬盤布持,IO,網(wǎng)絡(luò) 占用陕悬,Zabbix

第二十四? Top题暖,Vmstat,F(xiàn)ree墩莫,iostat

第二十五? 慢Sql

第二十六? 緩存命中率/失效策略

第二十七? TPS,Jmeter/load runner

第二十八? 敏捷開發(fā)

第二十九? bug修復(fù)流程

第三十? 上線發(fā)布流程

第三十一? 發(fā)布中心/ansible

======================過段時間更新以下內(nèi)容==================

第三十二? RMI芙委,RPC,Thrift? ? ? ? ? 第三十三? GC? ? ? ? ? 第三十四? JMS? ? ? ? ? 第三十五? Groovy? ? ? ? ? 第三十六? 一致性哈希狂秦,BigTable灌侣,Cassandra? ? ? ? ? 第三十七? MongoDB? ? ? ? ? 第三十八? NIO? ? ? ? ? 第三十九 Socket/WEBSocket? ? ? ? ? 第四十? ? Tuscany/Dubbo

======================過段時間更新以下內(nèi)容==================

第四十一 馬丹我編不下去了。

開玩笑啦裂问,然而還是少了不少的內(nèi)容侧啼,特別是一些業(yè)務(wù)上的知識牛柒。

比如說:分類的DB怎么設(shè)計,什么時候應(yīng)該拆表痊乾,什么時候要分庫皮壁,支付怎么做,微信的開發(fā)流程怎么樣哪审,第三方登錄的Auth是什么鬼蛾魄,手機短信驗證碼如何防攻擊,高并發(fā)讀怎么設(shè)計緩存湿滓,高并發(fā)寫怎么合并寫入次數(shù)滴须,

以及怎么重構(gòu),什么時候重構(gòu)叽奥,怎么預(yù)判斷需求的變化扔水。

還有更多的算法相關(guān)的內(nèi)容,zookeeper,paxos,md5,https等等等等朝氓。

以上的步驟不算完全精準(zhǔn)魔市,分類也不算完全仔細,嗯赵哲。更多的內(nèi)容我還在整理中待德。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市誓竿,隨后出現(xiàn)的幾起案子磅网,更是在濱河造成了極大的恐慌,老刑警劉巖筷屡,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涧偷,死亡現(xiàn)場離奇詭異,居然都是意外死亡毙死,警方通過查閱死者的電腦和手機燎潮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扼倘,“玉大人确封,你說我怎么就攤上這事≡倬眨” “怎么了爪喘?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長纠拔。 經(jīng)常有香客問我秉剑,道長,這世上最難降的妖魔是什么稠诲? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任侦鹏,我火速辦了婚禮诡曙,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘略水。我一直安慰自己价卤,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布渊涝。 她就那樣靜靜地躺著慎璧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪跨释。 梳的紋絲不亂的頭發(fā)上炸卑,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天,我揣著相機與錄音煤傍,去河邊找鬼。 笑死嘱蛋,一個胖子當(dāng)著我的面吹牛蚯姆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播洒敏,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼龄恋,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了凶伙?” 一聲冷哼從身側(cè)響起郭毕,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎函荣,沒想到半個月后显押,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡傻挂,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年乘碑,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片金拒。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡兽肤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出绪抛,到底是詐尸還是另有隱情资铡,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布幢码,位于F島的核電站笤休,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蛤育。R本人自食惡果不足惜宛官,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一葫松、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧底洗,春花似錦腋么、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至费变,卻和暖如春摧扇,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背挚歧。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工扛稽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人滑负。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓在张,卻偏偏與公主長得像,于是被迫代替她去往敵國和親矮慕。 傳聞我的和親對象是個殘疾皇子帮匾,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,761評論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)痴鳄,斷路器瘟斜,智...
    卡卡羅2017閱讀 134,629評論 18 139
  • 1.概述2.Gson的目標(biāo)3.Gson的性能和擴展性4.Gson的使用者5.如何使用Gson 通過Maven來使用...
    人失格閱讀 14,222評論 2 18
  • 昨天傍晚,我還在忙客戶的東西痪寻,看到你發(fā)來的微信螺句,這條微信讓我久久不能平靜,每次讀槽华,心是疼的壹蔓。 第一所有文字生硬的透...
    楊小羊story閱讀 481評論 0 0
  • 看完白日夢想家 最大的感觸就是 其實生活不像是自己所想的那樣 每天的三點一線 不斷參加考試 考不上懊悔自己 看電...
    欣欣愛吃冰淇淋閱讀 393評論 0 0