Java進(jìn)階之路——從初級(jí)程序員到架構(gòu)師,從小工到專(zhuān)家

前言:

怎樣學(xué)習(xí)才能從一名Java初級(jí)程序員成長(zhǎng)為一名合格的架構(gòu)師搞隐,或者說(shuō)一名合格的架構(gòu)師應(yīng)該有怎樣的技術(shù)知識(shí)體系,這是不僅一個(gè)剛剛踏入職場(chǎng)的初級(jí)程序員也是工作三五年之后開(kāi)始迷茫的老程序員經(jīng)常會(huì)問(wèn)到的問(wèn)題远搪。希望這篇文章會(huì)是你看到過(guò)的最全面最權(quán)威的回答劣纲。

一: 編程基礎(chǔ)

不管是C還是C++,不管是Java還是PHP谁鳍,想成為一名合格的程序員癞季,基本的數(shù)據(jù)結(jié)構(gòu)和算法基礎(chǔ)還是要有的。下面幾篇文章從思想到實(shí)現(xiàn)倘潜,為你梳理出常用的數(shù)據(jù)結(jié)構(gòu)和經(jīng)典算法绷柒。?

1-1 常用數(shù)據(jù)結(jié)構(gòu)

數(shù)組、鏈表涮因、堆废睦、棧、隊(duì)列养泡、Hash表嗜湃、二叉樹(shù)等

1-2 算法思想

算法時(shí)間復(fù)雜度和空間復(fù)雜度的分析計(jì)算

算法思想:遞推、遞歸澜掩、窮舉购披、貪心、分治肩榕、動(dòng)態(tài)規(guī)劃刚陡、迭代、分枝界限

1-3 經(jīng)典算法

經(jīng)典排序:插入排序、冒泡排序橘荠、快排(分劃交換排序)屿附、直接選擇排序、堆排序哥童、合并排序

經(jīng)典查找:順序查找挺份、二分查找、二叉排序樹(shù)查找

1-4 高級(jí)數(shù)據(jù)結(jié)構(gòu)

B+/B-數(shù)贮懈、紅黑樹(shù)匀泊、圖等

1-5 高級(jí)算法

圖的深度優(yōu)先搜索、圖的廣度優(yōu)先搜索朵你、拓?fù)渑判蚋髌浮ijkstra算法(單源最短路徑)、霍夫曼編碼抡医、輾轉(zhuǎn)相除法躲因、最小生成樹(shù)等

二:Java語(yǔ)言基礎(chǔ)

誕生不過(guò)二十余年的Java語(yǔ)言憑借其跨平臺(tái)、面向?qū)ο蠹缮怠⑦m合于分布式計(jì)算的特性大脉,廣泛應(yīng)用于Web網(wǎng)站、移動(dòng)設(shè)備水孩、桌面應(yīng)用中镰矿,并且已經(jīng)連續(xù)多年穩(wěn)居TOBIE編程語(yǔ)言排行榜前列,最近更是登上冠軍寶座俘种。Java有哪些優(yōu)秀而又與眾不同的地方首先一定要清楚秤标。

2-1 基礎(chǔ)語(yǔ)法

Java語(yǔ)法格式,常量和變量宙刘,變量的作用域苍姜,方法和方法的重載,運(yùn)算符悬包,程序流程控制怖现,各種基本數(shù)據(jù)類(lèi)型及包裝類(lèi)

2-2 重要:集合類(lèi)

Collection以及各種List、Set玉罐、Queue屈嗤、Map的實(shí)現(xiàn)以及集成關(guān)系,實(shí)現(xiàn)原理

Collections和Arrays?

2-3 其他JavaAPI

String和StringBuffer吊输,System和Runtime類(lèi)饶号,Date和DateFomat類(lèi)

java.lang包

java.util包(集合類(lèi)體系、規(guī)則表達(dá)式季蚂、zip茫船,以及時(shí)間琅束、隨機(jī)數(shù)、屬性算谈、資源和Timer等)

java.math包

java.net包

java.text包(各種格式化類(lèi)等)

java.security包

2-4 面向?qū)ο笊鳌⒚嫦蚪涌?/h4>

對(duì)象的三大特性:封裝、繼承和多態(tài)然眼,優(yōu)缺點(diǎn)

如何設(shè)計(jì)類(lèi)艾船,類(lèi)的設(shè)計(jì)原則

this關(guān)鍵字,final關(guān)鍵字高每,static關(guān)鍵字

對(duì)象的實(shí)例化過(guò)程

方法的重寫(xiě)和重載屿岂;方法和方法的參數(shù)傳遞過(guò)程

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

內(nèi)部類(lèi),抽象類(lèi)鲸匿,接口

對(duì)象的多態(tài)性(子類(lèi)和父類(lèi)之間的轉(zhuǎn)換爷怀、父類(lèi)紙箱子類(lèi)的引用),抽象類(lèi)和接口在多態(tài)中的應(yīng)用

2-5 JVM內(nèi)存模型带欢、垃圾回收

2-6 關(guān)于異常

Throwable/Error/Exception运授,Checked Exception vs. Unchecked Exception,異常的捕捉和拋出乔煞,異常捕捉的原則徒坡,finally的使用

2-7 多線(xiàn)程

線(xiàn)程和進(jìn)程的概念

如何在程序中創(chuàng)建多線(xiàn)程,線(xiàn)程安全問(wèn)題瘤缩,線(xiàn)程之間的通訊

線(xiàn)程的同步

死鎖問(wèn)題的剖析

線(xiàn)程池

2-8 IO

java.io包,理解IO體系的基于管道模型的設(shè)計(jì)思路以及常用IO類(lèi)的特性和使用場(chǎng)合伦泥。

File及相關(guān)類(lèi)剥啤,字節(jié)流InputStream和OutputStream,字符流Reader和Writer不脯,以及相應(yīng)緩沖流和管道流府怯,字節(jié)和字符的轉(zhuǎn)化流,包裝流防楷,以及常用包裝類(lèi)使用

分析IO性能

2-9XML

熟悉SAX牺丙、DOM以及JDOM的優(yōu)缺點(diǎn)并且能夠使用其中的一種完成XML的解析及內(nèi)容處理;這幾種解析方法的原理

2-10 一些高級(jí)特性

反射复局、代理冲簿、泛型、枚舉亿昏、Java正則表達(dá)式

2-11 網(wǎng)絡(luò)編程

網(wǎng)絡(luò)通信協(xié)議原理及適用場(chǎng)景峦剔,Socket編程,WEB服務(wù)器的工作原理

2-11 JDK1.5角钩、JDK1.6吝沫、JDK1.7呻澜、JDK1.8每個(gè)版本都比前面一個(gè)版本添加了哪些新特性,進(jìn)行了哪些提升

三:數(shù)據(jù)庫(kù)相關(guān)

前面說(shuō)到了數(shù)據(jù)結(jié)構(gòu)惨险,數(shù)據(jù)庫(kù)簡(jiǎn)單來(lái)說(shuō)就像是電子化的檔案柜羹幸,是按照一定的數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)辫愉。

3-1理論基礎(chǔ)

數(shù)據(jù)庫(kù)設(shè)計(jì)原則和范式

事務(wù)(ACID栅受、工作原理、事務(wù)的隔離級(jí)別一屋、鎖窘疮、事務(wù)的傳播機(jī)制)

3-2 各種數(shù)據(jù)庫(kù)優(yōu)缺點(diǎn)、使用場(chǎng)景分析

MySQL/SQLServer/Oracle以及各種NoSQL(Redis冀墨、MongoDB闸衫、Memcached、HBase诽嘉、CouchDB等)

3-2 SQL語(yǔ)句

數(shù)據(jù)庫(kù)創(chuàng)建蔚出,權(quán)限分配,表的創(chuàng)建虫腋,增刪改查骄酗,連接,子查詢(xún)

觸發(fā)器悦冀、存儲(chǔ)過(guò)程趋翻、事務(wù)控制

3-3 優(yōu)化

索引原理及適用,大表查詢(xún)優(yōu)化盒蟆,多表連接查詢(xún)優(yōu)化踏烙,子查詢(xún)優(yōu)化等

3-4 分庫(kù)、分表历等、備份讨惩、遷移

導(dǎo)入、導(dǎo)出寒屯,分庫(kù)荐捻、分表,冷備熱備寡夹,主從備份处面、雙機(jī)熱備、縱向擴(kuò)展菩掏、橫向擴(kuò)展

3-5 JDBC

JDBC Connection鸳君、Statement、PreparedStatement患蹂、CallableStatement或颊、ResultSet等不同類(lèi)的使用

連接池(配置使用砸紊、實(shí)現(xiàn)原理)

ORM,DAO

四:JavaWeb核心技術(shù)(包括部分前端)

Html5/Css/JS原生/jQuery

Ajax(跨域等)

JSP/JavaBean/Servlet/EL/JSTL/TabLib

JSF

JSON

EJB

序列化和反序列化

規(guī)則引擎

搜索引擎

模板引擎

緩存

身份認(rèn)證

測(cè)試

集群

持久化

生成靜態(tài)頁(yè)技術(shù)

高性能

安全

事務(wù)JTA

其他需要了解的囱挑,如:管理JMX醉顽、安全JCCA/JAAS、集成JCA平挑、通信JNDI/JMS/JavaMain/JAF游添、SSI技術(shù)

五、主流框架及工具

Struts1/Struts2

Spring(IoC通熄、AOP等)唆涝,SpringMVC

持久化:Hibernate/MyBatis

日志:Log4j

單元測(cè)試:JUnit

消息隊(duì)列:ActiveMQ、RabbitMQ等

負(fù)載均衡:Nginx/HaProxy

Web服務(wù)器:Tomcat唇辨、JBoss廊酣、Jetty、Resin赏枚、WebLogic亡驰、WebSphere等

通信:WebService(cxf的soap、restful協(xié)議)

緩存:Redis饿幅、Memcached

工作流:Activity凡辱、JBPM

搜索引擎:lucene,基于lucene封裝的solr?

模板引擎:Velocity栗恩、FreeMaker

大數(shù)據(jù):Hadoop(HDFS和MapReduce)

構(gòu)建工具:Ant/Maven

六透乾、JavaWeb系統(tǒng)設(shè)計(jì)與架構(gòu)

Java設(shè)計(jì)模式

JAVA與UML建模

面向服務(wù)架構(gòu):SOA/SCA/ESB/OSGI/EAI,微服務(wù)

面向資源架構(gòu):ROA/REST

面向云架構(gòu):COA/Saas/云計(jì)算

大型網(wǎng)站負(fù)載均衡磕秤、系統(tǒng)調(diào)優(yōu)等

七乳乌、More

排錯(cuò)能力:

應(yīng)該可以根據(jù)異常信息比較快速的定位問(wèn)題的原因和大致位置

優(yōu)化能力

代碼規(guī)范、代碼管理:

有自己的代碼規(guī)范體系亲澡,代碼可讀性好

知識(shí)面廣:

懂各種網(wǎng)絡(luò)產(chǎn)品及特性,懂各種中間件纫版,能夠知道坑在哪兒床绪,深諳各種技術(shù)方案的優(yōu)缺點(diǎn),懂整合各種資源并達(dá)到最優(yōu)....了解各種技術(shù)及應(yīng)用場(chǎng)景其弊,有足夠的工作經(jīng)驗(yàn)解決集成中遇到的各種奇葩問(wèn)題

技術(shù)管理/技術(shù)總監(jiān):

產(chǎn)品管理癞己、項(xiàng)目管理、團(tuán)隊(duì)建設(shè)梭伐、團(tuán)隊(duì)提升

CTO:

發(fā)展戰(zhàn)略


大家可以點(diǎn)擊加入群:【Java高級(jí)架構(gòu)進(jìn)階群】:854180697? 里面有Java高級(jí)大牛直播講解知識(shí)點(diǎn) 走的就是高端路線(xiàn) (如果你想跳槽換工作 但是技術(shù)又不夠 或者工作上遇到了瓶頸 我這里有一個(gè)JAVA的免費(fèi)直播課程 講的是高端的知識(shí)點(diǎn)基礎(chǔ)不好的誤入喲 只要你有1-5年的開(kāi)發(fā)經(jīng)驗(yàn)可以加群找我要課堂鏈接 注意:是免費(fèi)的 沒(méi)有開(kāi)發(fā)經(jīng)驗(yàn)誤入哦)

寫(xiě)在最后:歡迎留言討論痹雅,加關(guān)注,持續(xù)更新糊识!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末绩社,一起剝皮案震驚了整個(gè)濱河市摔蓝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌愉耙,老刑警劉巖贮尉,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異朴沿,居然都是意外死亡猜谚,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門(mén)赌渣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)魏铅,“玉大人,你說(shuō)我怎么就攤上這事坚芜±婪迹” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵货岭,是天一觀的道長(zhǎng)路操。 經(jīng)常有香客問(wèn)我,道長(zhǎng)千贯,這世上最難降的妖魔是什么屯仗? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮搔谴,結(jié)果婚禮上魁袜,老公的妹妹穿的比我還像新娘。我一直安慰自己敦第,他們只是感情好峰弹,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著芜果,像睡著了一般鞠呈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上右钾,一...
    開(kāi)封第一講書(shū)人閱讀 49,749評(píng)論 1 289
  • 那天蚁吝,我揣著相機(jī)與錄音,去河邊找鬼舀射。 笑死窘茁,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的脆烟。 我是一名探鬼主播山林,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼懂版,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼萌庆!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤饮亏,失蹤者是張志新(化名)和其女友劉穎渔伯,沒(méi)想到半個(gè)月后尔苦,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體流码,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年左驾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了镣隶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡诡右,死狀恐怖安岂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情帆吻,我是刑警寧澤域那,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站猜煮,受9級(jí)特大地震影響次员,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜王带,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一淑蔚、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧愕撰,春花似錦刹衫、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至囱桨,卻和暖如春仓犬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背舍肠。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工搀继, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人貌夕。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓律歼,卻偏偏與公主長(zhǎng)得像民镜,于是被迫代替她去往敵國(guó)和親啡专。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

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

  • 怎樣學(xué)習(xí)才能從一名Java初級(jí)程序員成長(zhǎng)為一名合格的架構(gòu)師畔况,或者說(shuō)一名合格的架構(gòu)師應(yīng)該有怎樣的技術(shù)知識(shí)體系,這是不...
    想象美閱讀 226評(píng)論 0 3
  • 此篇胡咧咧為帝君(高產(chǎn)帝)所作慧库,小說(shuō)體跷跪?不確定。但是這個(gè)故事前半段的原型很像似Gucci姐……時(shí)隔六年齐板,我終于要整...
    更秋閱讀 313評(píng)論 0 1
  • 感恩自己在很困的情況下還是決定爬起來(lái)寫(xiě)這篇日記吵瞻。 感恩今天的工作還算順利。 感恩我已經(jīng)準(zhǔn)備好明天的工作內(nèi)容甘磨。 感恩...
    混混小花閱讀 149評(píng)論 0 0
  • 貧窮是會(huì)遺傳的橡羞,這是很多人沒(méi)有意識(shí)到的問(wèn)題。對(duì)于金錢(qián)的態(tài)度济舆、思維卿泽、習(xí)慣,都會(huì)由父母遺傳給孩子滋觉、下一代签夭。 父母負(fù)債的...
    swallowhu閱讀 687評(píng)論 0 0