●序前言章 架構概述1.1 架構來源 1.1.1 軟件架構 1.1.2 架構單位 1.1.3 常見架構錯誤概念1.2 架構的價值1.3 架構發展歷史1.4 架構師 1.4.1 架構師分類 1.4.2 軟件架構師職責 1.4.3 軟件架構師素質要求 1.4.4 架構師練就方法小結習題第2章 架構基本理論2.1 架構品質2.2 架構過程 2.2.1 架構流程 2.2.2 架構成果 2.2.3 架構團隊2.3 架構開發模型 2.3.1 開發模型概述 2.3.2 邊做邊改模型 2.3.3 迭代開發模型 2.3.4 Scrum開發模型2.4 架構設計常用UML 2.4.1 概述 2.4.2 類圖 2.4.3 序列圖 2.4.4 構件圖 2.4.5 部署圖2.5 架構常用設計模式 2.5.1 模式概述 2.5.2 設計模式概述 2.5.3 設計模式與框架 2.5.4 單例模式 2.5.5 工廠方法模式 2.5.6 建造者模式 2.5.7 適配器模式 2.5.8 外觀模式 2.5.9 代理模式 2.5.10 模板方法模式 2.5.11 策略模式 2.5.12 責任鏈模式2.6 架構模式 2.6.1 Java EE規格與框架 2.6.2 模式與架構 2.6.3 MVC架構模式 2.6.4 分層架構模式 2.6.5 管道-過濾器架構模式2.7 架構思維 2.7.1 抽像思維 2.7.2 分層思維 2.7.3 分治思維 2.7.4 演化思維 2.7.5 架構思維之間的關繫2.8 架構編程思想 2.8.1 面向過程編程 2.8.2 面向對像編程 2.8.3 面向服務架構 2.8.4 架構思想之間的關繫2.9 架構設計原則 2.9.1 簡單原則 2.9.2 合適原則 2.9.3 演化原則2.10 架構優化利器 2.10.1 重構帶來的利益 2.10.2 重構技巧 2.10.3 重構工具小結習題第3章 構建開發工具體繫3.1 DevOps 3.1.1 代碼管理工具 3.1.2 項目構建工具 3.1.3 持續集成工具3.2 智能開發平臺 3.2.1 搭建智能開發平臺 3.2.2 Eclipse對比IntelliJ 3.2.3 Eclipse啟動方式 3.2.4 Eclipse程序啟動參數 3.2.5 Eclipse插件安裝方式3.3 工具快捷鍵 3.3.1 快捷鍵的好處 3.3.2 快速鍵盤操作 3.3.3 優化快捷鍵3.4 工具優化與保養小結習題第4章Java機制技能專題4.1通用處理方式 4.1.1串行與並行 4.1.2同步與異步機制 4.1.3在線處理與批處理 4.1.4繫統間通信方式4.2核心機制 4.2.1虛擬機機制 4.2.2內存管理機制4.3反射與內省 4.3.1反射機制 4.3.2內省機制4.4注解 4.4.1注解機制 4.4.2注解分類 4.4.3自定義注解 4.4.4注解解析 4.4.5適用場景4.5Servlet 4.5.1Servlet機制 4.5.2Servlet與CGI 4.5.3Servlet與JSP 4.5.4Servlet與普通Java類 4.5.5自定義標簽4.6監聽器、過濾器與攔截器 4.6.1技術要點 4.6.2三者對比4.7Cookie與Session 4.7.1Cookie機制 4.7.2Session機制4.8Socket 4.8.1Socket通信機制 4.8.2三次握手建立連接 4.8.3四次揮手釋放連接小結練習題第5章 Java後臺技術棧專題5.1 XML 5.1.1 概述 5.1.2 DTD 5.1.3 XSD 5.1.4 XML解析5.2 HTTP 5.2.1 概述 5.2.2 URL 5.2.3 HTTP消息結構5.3 JDBC 5.3.1 概述 5.3.2 JDBC開發方法 5.3.3 事務機制5.4 AOP 5.4.1 概述 5.4.2 SpringAOP5.5 字符集與亂碼 5.5.1 字符集 5.5.2 亂碼5.6 日期處理 5.6.1 概述 5.6.2 日期使用技巧5.7 翻頁控件 5.7.1 問題 5.7.2 解決方案5.8 屬性文件 5.8.1 問題 5.8.2 解決方案5.9 重復提交 5.9.1 問題 5.9.2 解決方案5.10 排他 5.10.1 問題 5.10.2 解決方案 5.10.3 防止數據死鎖小結練習題第6章 Java核心架構體繫6.1 日志架構設計 6.1.1 概述 6.1.2 日志設計技巧 6.1.3 日志框架6.2 安全架構設計 6.2.1 安全設計原則 6.2.2 安全注冊 6.2.3 認證 6.2.4 SSL與HTTPS 6.2.5 CSRF 6.2.6 XSS6.3 權限架構設計 6.3.1 概述 6.3.2 設計技巧6.4 驗證架構設計 6.4.1 概述 6.4.2 設計技巧6.5 異常架構設計 6.5.1 概述 6.5.2 異常分類 6.5.3 異常處理方式 6.5.4 異常處理目的 6.5.5 異常處理流程6.6 消息架構設計 6.6.1 概述 6.6.2 設計範例6.7 阻塞架構設計 6.7.1 概述 6.7.2 設計技巧6.8 數據字典架構設計 6.8.1 概述 6.8.2 設計技巧6.9 體繫架構之間的關繫小結練習題第7章 JavaWeb7.1 Web服務器 7.1.1 服務器種類 7.1.2 Tomcat 7.1.3 服務器集群7.2 框架對比 7.2.1 Struts1對比Struts2 7.2.2 SpringMVC對比Struts2 7.2.3 Hibernate對比MyBatis7.3 框架集成 7.3.1
內容簡介
本書內容分為軟件架構理論、軟件架構不錯技能、軟件架構綜合技能以及軟件架構創新四大部分。第壹部分是、2章,介紹了軟件架構師練就的方法、軟件架構設計模式、軟件架構開發模型、軟件架構模式、軟件架構思維、軟件架構編程思想以及軟件架構設計原則等,為軟件架構設計的基本理論;第二部分是第3~5章,介紹了軟件架構師推薦的工具體繫、Java機制技能要點專題、Java後臺技術棧技能要點專題以及日志架構設計、安全架構設計、權限架構設計、驗證架構設計、異常架構設計、消息架構設計、阻塞架構設計、數據字典架構設計Java八大核心架構設計體繫,為軟件架構設計的不錯技能體繫;第三部分是第6~13章,以Spring技術為脈絡,介紹了JavaWeb、SpringMVC、Spring Integration、Spring Boot、SOAP WebService、REST WebService以及框架測試等架構設計相關的核心技......
軟件架構師是每個程序員職業生涯中內功心法修煉的終極目標。要達到這個目標需要具備“十八般武藝,八十種技巧”,本書正是繼《Java代碼與架構之完美優化——實戰經典》《軟件品質之完美管理——實戰經典》之後,優秀軟件架構師又一本必讀書,也是“軟件架構師成長之路”繫列教程的第三部作品,亦是本繫列的收官之作。本書總結了JavaEE軟件架構師應該具備的架構設計相關技能體繫,希望可以成為程序員朋友們架構師成長之路上的鋪路石。 從形上看,架構是繫統結構的骨架,支撐和鏈接各個部分;從神上看,架構是繫統設計的靈魂,深刻體現了業務技術實現的本質。從縱向架構上看,架構涉及由客戶端發送請求到服務器處理,再從服務器返回給客戶端的各個主要步驟的具體處理細節;從橫向架構上看,架構又關聯到實現這種客戶端-服務器端的架構模式。本書把與此橫縱體繫相關的技術進行了繫統的總結與對比。另外,要成為一名優秀的軟件架構師,還需要......
"