史上最全java架构师技能图谱(上)
java架構(gòu)師最全技能圖譜上篇,包含:數(shù)結(jié)構(gòu)算法、java進(jìn)階、web開(kāi)發(fā)、框架與工具四大技能圖譜。 下篇將包含大數(shù)據(jù)以及性能、設(shè)計(jì)模式、UML、中間件、分布式集群、負(fù)載均衡、通訊協(xié)議、架構(gòu)設(shè)計(jì)等技術(shù)圖譜等章節(jié)
本文作者,陳睿 優(yōu)知學(xué)院創(chuàng)始人,前百度研發(fā)經(jīng)理,攜程定制旅游CTO。
優(yōu)知學(xué)院是IT人在線進(jìn)階站,幫助IT人升職加薪,導(dǎo)師來(lái)自于BAT等一線互聯(lián)網(wǎng)公司總監(jiān)。提供系統(tǒng)的互聯(lián)網(wǎng)產(chǎn)品技術(shù)進(jìn)階干貨資料和課程,以及定期的線下實(shí)戰(zhàn)活動(dòng)。
一:數(shù)據(jù)結(jié)構(gòu)算法
算法分析
時(shí)間復(fù)雜度和空間復(fù)雜度
算法思想
遞推、遞歸、窮舉、貪心、分治、動(dòng)態(tài)規(guī)劃、迭代、分枝界限
數(shù)據(jù)結(jié)構(gòu)
數(shù)組、鏈表、堆、棧、隊(duì)列、Hash表、二叉樹(shù)等
算法
排序
經(jīng)典排序:插入排序、冒泡排序、快排(分劃交換排序)、直接選擇排序、堆排序、合并排序等
查找
經(jīng)典查找:順序查找、二分查找、二叉排序樹(shù)查找
高級(jí)算法
貪婪
回溯
剪枝
動(dòng)態(tài)規(guī)劃
大數(shù)據(jù)算法
hash分桶
統(tǒng)計(jì)
二:Java進(jìn)階
java編程基礎(chǔ):
對(duì)象和類 、基本數(shù)據(jù)類型 、變量類型、運(yùn)算符、循環(huán)分支結(jié)構(gòu)、數(shù)組、正則表達(dá)式等
集合
總的說(shuō)來(lái),Java API中所用的集合類,都是實(shí)現(xiàn)了Collection接口,他的一個(gè)類繼承結(jié)構(gòu)如下:
Collection<–List<–Vector
Collection<–List<–ArrayList
Collection<–List<–LinkedList
Collection<–Set<–HashSet
Collection<–Set<–HashSet<–LinkedHashSet
Collection<–Set<–SortedSet<–TreeSet
面向?qū)ο蟾呒?jí)知識(shí)
類、對(duì)象、繼承、構(gòu)造函數(shù)、封裝、接口、抽象類、多態(tài)、重寫、this static關(guān)鍵字、類與對(duì)象的關(guān)系
異常處理
異常類類圖:throwable exception error RuntimeException
異常處理機(jī)制
如何定義和使用異常
運(yùn)行時(shí)異常和受檢查異常區(qū)別
運(yùn)行時(shí)錯(cuò)誤
java異常處理的原則和技巧
多線程
概念與原理
創(chuàng)建于啟動(dòng)
線程的生命周期及五種基本狀態(tài)
線程交互
死鎖
調(diào)度合并
調(diào)度讓步
調(diào)度休眠
同步方法
同步塊
同步與鎖
線程池
阻塞隊(duì)列
IO/NIO
同步阻塞 同步非阻塞 異步IO
反射
序列化
泛型
網(wǎng)絡(luò)編程
高級(jí)特性
JVM
運(yùn)行時(shí)數(shù)據(jù)區(qū):方法區(qū)、虛擬機(jī)棧、本地方法棧、堆、程序計(jì)算器
GC算法:
內(nèi)參回收三要素:什么內(nèi)容需要回收、什么時(shí)候回收、如何回收
并發(fā)與執(zhí)行
引用計(jì)數(shù)算法
根搜索算法
垃圾回收算法:標(biāo)記-清楚算法 復(fù)制算法 標(biāo)記-整理算法 分代手機(jī)算法
垃圾收集器:新生代、老年代收集器
溢出
java堆溢出
方法區(qū)溢出
outofmemoryerror
虛擬機(jī)棧和本地方法棧溢出
直接內(nèi)容溢出
三:Web開(kāi)發(fā)核心
HTML JS CSS
html js css語(yǔ)法基礎(chǔ)
Js css框架
Html開(kāi)發(fā)工具
JS和CSS調(diào)試工具
模板引擎
jsp
velocity
freemarker
Java web
容器:tomcat jetty等
熱部署插件:run-jetty-run
cookie session使用和區(qū)別
fliter和listener的啟動(dòng)和步驟
身份驗(yàn)證
單點(diǎn)登錄原理以及實(shí)現(xiàn)
web核心
事物JTA
JMX
安全:JCCA/JAAS
通信:JNDI/JMS
SSI技術(shù)
linux
常用命令以及操作系統(tǒng)原理等
線上故障處理和分析
性能工具
visualVM Jprofiler JMeter等
線上故障
線程數(shù)超標(biāo)
訪問(wèn)超時(shí)
長(zhǎng)事務(wù)
CPU超標(biāo)
內(nèi)存超標(biāo)
開(kāi)發(fā)工具使用
web開(kāi)發(fā)調(diào)試
firebug
Web Developer
JavaScript Debugger
IETester
Yslow
構(gòu)建工具
maven Grails
maven私服 nexus
版本控制
git svn
java調(diào)試工具
JCover
Junit
Jtest
以及大量的eclipse插件,eg:findbugs等
開(kāi)發(fā)框架
SSH:struts2+spring+hibernate
SSM:springmvc+spring+mybatis
阿里開(kāi)源框架
如果你對(duì)架構(gòu)師比較感興趣,可以查看優(yōu)知學(xué)院官網(wǎng)架構(gòu)師進(jìn)階系列文章。
以上內(nèi)容就是java架構(gòu)師技能圖譜上篇,下篇將包含大數(shù)據(jù)以及性能、設(shè)計(jì)模式、UML、中間件、分布式集群、負(fù)載均衡、通訊協(xié)議、架構(gòu)設(shè)計(jì)等技術(shù)圖譜等章節(jié)。
你可能也喜歡:
總結(jié)
以上是生活随笔為你收集整理的史上最全java架构师技能图谱(上)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java必考题目之JVM面试题目和答案
- 下一篇: 史上最全memcached面试26题和答