Java架構(gòu)師課程(JEA)
?
培養(yǎng)目標(biāo):
1.?具備專業(yè)級(jí)水平的Java企業(yè)架構(gòu)師
2.?具備獲取Oracle?Java最高級(jí)別Java架構(gòu)師認(rèn)證OCM-EA的能力
?
課程內(nèi)容:
課程名稱
課程及實(shí)訓(xùn)內(nèi)容
C1?SunTone架構(gòu)方法學(xué)實(shí)戰(zhàn)
主題
主要知識(shí)點(diǎn)
軟件開發(fā)過程簡(jiǎn)介
軟件開發(fā)方法學(xué)對(duì)軟件項(xiàng)目的意義;面向?qū)ο蟮能浖_發(fā)過程OOSD。
使用SunTone/UP方法學(xué)
SunTone?AM?/UP方法學(xué)、軟件開發(fā)工作流需求收集-需求分析-構(gòu)架-設(shè)計(jì)-實(shí)現(xiàn)-測(cè)試-部署;階段、工作流、增量與迭代;編寫軟件項(xiàng)目計(jì)劃書。
需求收集-愿景和SRS文檔
編寫愿景文檔、SRS文檔。
需求收集-用例圖場(chǎng)景文檔
設(shè)計(jì)并繪制UML圖及UML工作軟件的使用。
需求分析-細(xì)化用例圖
介紹需求分析工作流;細(xì)化用例圖。
需求分析-用例表和UI原型
創(chuàng)建用例表、活動(dòng)圖和UI原型;UI原型的設(shè)計(jì)規(guī)則及UI原型制作軟件。
需求分析-創(chuàng)建域模型
CRC分析法;繪制UML類圖;創(chuàng)建域模型。
設(shè)計(jì)-創(chuàng)建設(shè)計(jì)模型
創(chuàng)建設(shè)計(jì)工作流、協(xié)作圖;健壯性分析法Robust?Analysis;基于序列圖的設(shè)計(jì)模型。
構(gòu)架-創(chuàng)建架構(gòu)模型
構(gòu)架工作流;構(gòu)架工作流的產(chǎn)物;實(shí)現(xiàn)向架構(gòu)的轉(zhuǎn)換;使用FC/AC/BD/StW/BD/SF/TO等Java?EE模式。
設(shè)計(jì)-創(chuàng)建解決方案模型
創(chuàng)建解決方案模型;細(xì)化與模型的屬性;細(xì)化方法和構(gòu)造器;將域?qū)嶓w映射到數(shù)據(jù)庫表。
實(shí)現(xiàn)、測(cè)試和部署
開發(fā)過程中的實(shí)現(xiàn)、測(cè)試和部署工作流。
W1?項(xiàng)目研討
名稱
項(xiàng)目描述
軟件項(xiàng)目管理實(shí)戰(zhàn)
基于真實(shí)的項(xiàng)目案例,完成項(xiàng)目的需求收集、分析、構(gòu)架和設(shè)計(jì)等前期過程,以形成完整的軟件項(xiàng)目管理流程。此間創(chuàng)建思維模型、需求模型、設(shè)計(jì)模型和架構(gòu)模型,繪制相關(guān)的UML圖,并完成模型之間的轉(zhuǎn)換。
C2?JVM與開源框架原理分析
主題
主要知識(shí)點(diǎn)
JVM基本原理
JVM內(nèi)存的結(jié)構(gòu)模型、堆與堆棧原理、對(duì)象在內(nèi)存中的結(jié)構(gòu);類加載與Class對(duì)象的內(nèi)部結(jié)構(gòu)、常量池;對(duì)象實(shí)例與性能的考慮;對(duì)象與內(nèi)存理解的常見誤區(qū);類的屬性、方法、構(gòu)造器在繼承體系中的原理、靜態(tài)成員內(nèi)存布局和原理;抽象類、接口的原理以及適用的OO法則;枚舉的單例模式應(yīng)用、嵌套類/內(nèi)部類的原理與編程規(guī)則;異常的處理方式分析及最佳實(shí)踐;異常與日志的合理結(jié)合;異常使用的常見誤區(qū)。
Java?EE標(biāo)準(zhǔn)架構(gòu)
多態(tài)引用和多態(tài)參數(shù)、instanceof運(yùn)算符與對(duì)象的強(qiáng)制類型轉(zhuǎn)換;Web容器(如Tomcat)的工作原理、Java?EE標(biāo)準(zhǔn)五層架構(gòu)、組件與容器協(xié)調(diào)工作原理;Java?EE架構(gòu)中的主要服務(wù)(如JNDI、JTA、RMI、JMS等);三層與四層物理架構(gòu)的區(qū)別與場(chǎng)景。
Web容器標(biāo)準(zhǔn)組件
Servlet/Filter工作原理與生命周期;JSP工作原理與生命周期;Web應(yīng)用程序的生命周期與事件機(jī)制原理。
實(shí)現(xiàn)Model?2架構(gòu)
Model2架構(gòu)與MVC原理;結(jié)構(gòu)良好的Web應(yīng)用程序;MVC應(yīng)用的常見的誤區(qū)。
Web應(yīng)用的基本技術(shù)
JDBC的內(nèi)部實(shí)現(xiàn)原理、三通道的原理、連接池的工作原理及對(duì)性能的影響、DataSource的工作機(jī)制、JNDI與Web容器資源的訪問;可復(fù)用的Web表示片段的規(guī)劃與管理、頁面布局的設(shè)計(jì)思想、動(dòng)態(tài)嵌入與靜態(tài)嵌入的原理與使用決策。
使用Struts框架
Struts1.x/2.x框架內(nèi)部設(shè)計(jì)原理、Struts1容器工作原理、Struts1.x應(yīng)用的常見誤區(qū)。
使用Spring框架
Spring框架IoC原理、Spring容器工作原理、AOP原理與事務(wù)處理、動(dòng)態(tài)代理的實(shí)現(xiàn)與原理。
使用ORM框架
Hibernate、iB,?,?,?atis框架ORM原理、Hiberna,?te容器的工作原理、緩存的原理與使用決策、Hibernate二級(jí)緩存原理;iBatis容器的工作原理;SSH架構(gòu)的整合原理、SSI架構(gòu)的整合原理。
W2項(xiàng)目研討
名稱
項(xiàng)目描述
A.?良好的設(shè)計(jì)結(jié)構(gòu)與框架選擇
基于真實(shí)的項(xiàng)目案例,選擇適合框架,對(duì)主要用例進(jìn)行分析和設(shè)計(jì);研討框架選擇的正確性,以及設(shè)計(jì)結(jié)構(gòu)的合理性和最佳實(shí)踐
C3?EJB與大型企業(yè)應(yīng)用程序
主題
主要知識(shí)點(diǎn)
開發(fā)會(huì)話Bean組件(一)
企業(yè)會(huì)話Bean組件的原理,創(chuàng)建會(huì)話Bean。
開發(fā)會(huì)話Bean組件(二)
有狀態(tài)會(huì)話Bean和無狀態(tài)會(huì)話Bean的運(yùn)行特征及生命周期;創(chuàng)建會(huì)話Bean客戶端;實(shí)現(xiàn)會(huì)話Bean組;NetBeans?IDE中開發(fā)會(huì)話Bean。
開發(fā)JPA實(shí)體組件(一)
Java持久化規(guī)范;定義實(shí)體類。
開發(fā)JPA實(shí)體組件(二)
實(shí)體實(shí)例的生命周期;JPA實(shí)體生命周期及訪問;在NetBeans中開發(fā)JPA實(shí)體;使用實(shí)體與數(shù)據(jù)庫交互;持久化單元;實(shí)現(xiàn)和管理JPA實(shí)體;對(duì)象-關(guān)系映射的概念及原理。
使用JP查詢語言(一)
Java?持久化查詢語言(JPQL),使用查詢對(duì)象實(shí)現(xiàn)實(shí)體數(shù)據(jù)查詢。
使用JP查詢語言(二)
實(shí)體持久化狀態(tài)的查詢;創(chuàng)建和使用查詢對(duì)象;在NetBeans中開發(fā)JPA實(shí)體查詢。
為數(shù)據(jù)的關(guān)聯(lián)關(guān)系建模(一)
為數(shù)據(jù)的關(guān)聯(lián)關(guān)系建模,包括一對(duì)一、一對(duì)多/多對(duì)一、多對(duì)多的單向/雙向關(guān)系。
為數(shù)據(jù)的關(guān)聯(lián)關(guān)系建模(二)
定義和使用合成主鍵;實(shí)現(xiàn)一對(duì)多/多對(duì)一雙向關(guān)聯(lián);實(shí)現(xiàn)多對(duì)多雙向關(guān)聯(lián);設(shè)置獲取和級(jí)聯(lián)模式;實(shí)現(xiàn)關(guān)聯(lián)關(guān)系實(shí)體;在NetBeans中開發(fā)關(guān)聯(lián)關(guān)系實(shí)體。
實(shí)現(xiàn)事務(wù)處理(一)
事務(wù)的概念和原理;EJB事務(wù)的ACID特性;使用CMT實(shí)現(xiàn)事務(wù)邊界管理。
實(shí)現(xiàn)事務(wù)處理(二)
編程與CMT事務(wù)交互;Java?EE平臺(tái)的異常;在EJB組件中實(shí)現(xiàn)CMT事務(wù);在NetBeans中開發(fā)CMT事務(wù)。
實(shí)現(xiàn)消息處理(一)
組件異步通訊的特點(diǎn);JMS?點(diǎn)對(duì)點(diǎn)消息架構(gòu)和發(fā)行-訂閱消息架構(gòu);開發(fā)消息生產(chǎn)者客戶端。
實(shí)現(xiàn)消息處理(二)
消息驅(qū)動(dòng)Bean組件的運(yùn)行特征及生命周期;開發(fā)消息驅(qū)動(dòng)Bean?組件;
使用定時(shí)器服務(wù)
定時(shí)器的原理和定時(shí)類型;開發(fā)定時(shí)器組件;
Java?Web?Service的SOA
Web?Service和SOA架構(gòu)的基本概念;使用JAX-WS?API開發(fā)Web?Service端點(diǎn)和客戶端。
C4?GoF與Java?EE模式
主題
主要知識(shí)點(diǎn)
OO設(shè)計(jì)法則與設(shè)計(jì)模式
面向?qū)ο笤O(shè)計(jì)的基本概念;面向?qū)ο笤O(shè)計(jì)的基本法則;設(shè)計(jì)模式的特性。
使用GoF行為型模式
行為型模式的基本特點(diǎn);GoF行為型設(shè)計(jì)模式,包括策略模式、命令模式、迭代器模式、觀察器模式。
使用GoF創(chuàng)建型模式
創(chuàng)建型模式的基本特點(diǎn);GoF創(chuàng)建型設(shè)計(jì)模式,包括工廠方法模式、抽象工廠模式、單體模式等。
使用GoF結(jié)構(gòu)型模式
結(jié)構(gòu)型模式的基本特點(diǎn);GoF結(jié)構(gòu)型設(shè)計(jì)模式,包括外觀模式、代理模式、適配器模式、合成體模式、裝飾器模式、狀態(tài)模式、模板方法模式等。
介紹Java?EE模式
Java?EE模式的思想體系;JavaEE模式目錄中的JavaEE模式與層(tier)。
使用整合層模式
整合層模式的特征和用途;使用整合層模式,包括??Service?Activator、Data?Access?Object、Web?Service?Broker。
使用表示層-業(yè)務(wù)層模式
Java?EE?業(yè)務(wù)層模式推動(dòng)與表示層通訊的基本特點(diǎn);業(yè)務(wù)層模式:Service?Locator、Session?Facade、Business?Delegate、Transfer?Object。
使用業(yè)務(wù)層內(nèi)部模式
業(yè)務(wù)層內(nèi)部模式的基本特點(diǎn);使用業(yè)務(wù)層模式,包括Application?Service、Business?Object、Transfer?Object?Assembler、Composite?Entity。
使用表示層模式
Java?EE?表示層模式的基本特點(diǎn);Model?2?架構(gòu);使用表示層模式,包括Intercepting?Filter、Front?Controller、Application?Controller、Context?Object。
更多的表示層模式
使用表示層模式:View?Helper、Composite?View、Dispatcher?View、Service?to?Worker。
W3項(xiàng)目研討
名稱
項(xiàng)目描述
書籍庫存登記系統(tǒng)
仿真實(shí)現(xiàn)一個(gè)基于B/S的《書籍庫存登記系統(tǒng)》。該系統(tǒng)提供書籍入庫登記和庫存列表功能,并實(shí)現(xiàn)列出庫存書籍詳細(xì)信息。系統(tǒng)以增量方式開發(fā),循序漸進(jìn)完成,目的在于掌握Web應(yīng)用程序編程和調(diào)試技巧。主要涉及以下主要知識(shí)點(diǎn):Model?2架構(gòu)的實(shí)現(xiàn)、使用Servlet實(shí)現(xiàn)控制器,JSP實(shí)現(xiàn)視圖、表單的各種組件的處理、使用DAO模式,通過DataSource訪問數(shù)據(jù)、在Web應(yīng)用程序中整合MySQL數(shù)據(jù)庫。
C5?Java企業(yè)項(xiàng)目的架構(gòu)與性能優(yōu)化
主題
主要知識(shí)點(diǎn)
架構(gòu)的基本概念?
架構(gòu)的基本概念和必要性,架構(gòu)師的功能;架構(gòu)與風(fēng)險(xiǎn)管理;架構(gòu)的五個(gè)基本方面;描述UML圖。
軟件開發(fā)方法學(xué)
開發(fā)方法學(xué)的最佳實(shí)踐,使用SunTone?AM方法學(xué);開發(fā)方法學(xué)工作流和四個(gè)階段;編寫項(xiàng)目計(jì)劃書;怎樣提高項(xiàng)目成功的可能性。
創(chuàng)建系統(tǒng)架構(gòu)原型
用組件表示系統(tǒng);創(chuàng)建架構(gòu)模型;建立架構(gòu)原型。
系統(tǒng)性質(zhì)量的評(píng)估
評(píng)估影響系統(tǒng)性質(zhì)量的因素;規(guī)劃可升級(jí)性以支持預(yù)期的增長(zhǎng);提升QoS的常規(guī)指南。
描述Java?EE技術(shù)
表示層的設(shè)計(jì)指導(dǎo);業(yè)務(wù)層的設(shè)計(jì)指導(dǎo);常見的Java?EE架構(gòu)。?
系統(tǒng)架構(gòu)的經(jīng)驗(yàn)和指南
系統(tǒng)的靈活性;網(wǎng)絡(luò)的通訊與布局;事務(wù)的規(guī)劃與管理;成本管理。
企業(yè)應(yīng)用的安全性
企業(yè)應(yīng)用的安全風(fēng)險(xiǎn);企業(yè)架構(gòu)的安全規(guī)劃;分布式系統(tǒng)的主要風(fēng)險(xiǎn)因素及開發(fā)的經(jīng)驗(yàn)指南;
完善架構(gòu)原型
規(guī)劃網(wǎng)絡(luò)模型;規(guī)劃事務(wù)模型;規(guī)劃安全模型;Java?EE?資源服務(wù)器的整合技術(shù);完善架構(gòu)模型,完善應(yīng)用程序網(wǎng)絡(luò)通訊、事務(wù)及安全;?
影響Java?EE應(yīng)用性能的因素
影響Java?EE應(yīng)用性能的因素;
Tier的性能優(yōu)化
垂直層?(Tier)影響性能的因素;Tier的性能優(yōu)化,包括資源層的優(yōu)化、業(yè)務(wù)層和整合層的優(yōu)化、表示層的優(yōu)化、客戶端并發(fā)訪問的優(yōu)化;?
Layer的性能優(yōu)化
Layer的性能優(yōu)化,包括硬件層的優(yōu)化、OS層的優(yōu)化、中間件層的優(yōu)化、JVM的架構(gòu)及垃圾回收機(jī)制、JVM的性能調(diào)優(yōu);水平層(layer)影響性能的方面;應(yīng)用層的優(yōu)化;復(fù)制策略及選擇標(biāo)準(zhǔn),規(guī)劃系統(tǒng)容量以支持需求負(fù)荷;關(guān)于性能調(diào)優(yōu)的思考。
W4項(xiàng)目研討
名稱
項(xiàng)目描述
企業(yè)應(yīng)用程序的架構(gòu)和設(shè)計(jì)
基于真實(shí)的項(xiàng)目案例,研討項(xiàng)目的架構(gòu)和設(shè)計(jì),對(duì)所有系統(tǒng)性質(zhì)量逐一分析,調(diào)整架構(gòu)以逐一滿足系統(tǒng)性質(zhì)量,提交合格的架構(gòu)原型。
?
?
?
·
?
?
?
?
?
?
?
?
?
?
?
?
?
?