作 者:張戈 著
定 價:58
出 版 社:電子工業出版社
出版日期:2021年12月01日
頁 數:256
裝 幀:平裝
ISBN:9787121426377
本書的編寫理念和建設思路是在繫統地介紹面向對像開發方法的基本概念和思想的基礎上,重點介紹UML及其建模技術、方法與應用,以及得到業界廣泛認同的軟件設計模式、軟件開發的過程、規程與實踐,並以一個豐富的案例貫穿始終。
●第1章 面向對像方法概述············································································1 引導案例:四大發明之活字印刷―面向對像思想的勝利·······························1 1.1 信息繫統分析與設計概述···································································2 1.1.1 信息繫統··············································································2 1.1.2 信息繫統分析與設計·······························································3 1.2 信息繫統開發方法的演變···································································3 1.2.1 繫統開發生命周期模型····························································4 1.2.2 結構化開發方法·····································································4 1.2.3 原型法·················································································6 1.2.4 面向對像方法········································································7 1.3 面向對像方法的基本概念·································································10 1.3.1 對像··················································································10 1.3.2 類·····················································································11 1.3.3 抽像··················································································11 1.3.4 封裝··················································································12 1.3.5 繼承··················································································12 1.3.6 多態性···············································································14 1.3.7 消息機制············································································15 1.4 面向對像方法的主要優點·································································15 1.4.1 從認識論的角度來看,面向對像方法改變了開發軟件的方式··········15 1.4.2 面向對像語言使客觀世界到計算機世界的語言鴻溝變窄················16 1.4.3 面向對像使分析與設計之間的鴻溝變窄·····································17 1.4.4 面向對像有助於軟件的維護與復用···········································19 本章小結····························································································20 本章習題····························································································20 第2章 UML概述·····················································································23 引導案例:面向對像方法的困難······························································23 2.1 UML介紹····················································································23 2.1.1 建模的原因·········································································23 2.1.2什麼是UML··············································································25 2.1.3 UML的發展歷程··································································25 2.1.4 UML的特點········································································262.2 UML素···········································································272.2.1 UML視圖···········································································27 2.2.2 UML圖··············································································29 2.2.3 事物··················································································31 2.2.4 關繫··················································································32 2.2.5 通用機制············································································35 2.3 UML與面向對像的繫統開發統一過程················································36 2.3.1 RUP核心工作流···································································36 2.3.2 UML支持迭代、漸增式的開發過程··········································38 2.3.3 UML建模過程產生的模型與文檔·············································39 2.3.4 用例驅動的UML繫統分析與設計············································40 本章小結····························································································42 本章習題····························································································43 第3章 需求分析與用例建模·······································································45 引導案例:自動取款機(ATM)的需求·····················································45 3.1 需求分析······················································································45 3.1.1 需求分析的重要性································································45 3.1.2 需求分析的過程···································································47 3.2 用例建模······················································································48 3.2.1 用例圖···············································································48 3.2.2 繫統邊界············································································49 3.2.3 參與者···············································································51 3.2.4 用例··················································································54 3.2.5 用例圖中的關繫···································································56 3.2.6 用例描述············································································60 3.2.7 用例描述中經常出現的問題····················································63 3.3 活動圖建模···················································································67 3.3.1 活動圖的定義······································································67 3.3.2 活動圖的類型······································································68 3.3.3 基素······································································68 3.3.4 活動圖建模步驟···································································74 3.4 需求分析實例················································································74 3.4.1 選題背景············································································74 3.4.2 需求規格說明······································································75 3.4.3 用例建模············································································76 3.4.4 活動圖建模·········································································86 本章小結····························································································87 本章習題····························································································88 第4章 繫統分析與靜態結構建模·································································90 4.1 面向對像的繫統分析·······································································90 4.1.1 問題域和繫統責任································································90 4.1.2 對繫統開發人員的要求··························································91 4.1.3 面向對像繫統分析的任務·······················································91 4.2 對像與類······················································································93 4.2.1 對像與類的概念···································································93 4.2.2 識別對像與類······································································95 4.2.3 審查與篩選·········································································99 4.2.4 抽像出類並進行調整····························································100 4.2.5 類的命名···········································································101 4.3 屬性與操作··················································································101 4.3.1 定義類的屬性·····································································101 4.3.2 定義類的操作·····································································105 4.4 類之間的關繫···············································································107 4.4.1 繼承(泛化)關繫·······························································108 4.4.2 關聯關繫···········································································112 4.4.3 聚合關繫與組合關繫····························································116 4.4.4 依賴關繫···········································································119 4.5 抽像類與接口···············································································120 4.5.1 抽像類··············································································120 4.5.2 接口·················································································122 4.5.3 類版型··············································································125 4.6 靜態結構建模實例·········································································127 4.6.1 識別對像和類·····································································127 4.6.2 識別屬性與操作··································································127 4.6.3 識別關繫···········································································127 本章小結···························································································128 本章習題···························································································129 第5章 繫統分析與動態行為建模································································132 引導案例:赤壁之戰與繫統建模·····························································132 5.1 動態行為建模···············································································134 5.1.1 交互模型···········································································134 5.1.2 狀態模型···········································································135 5.1.3 活動模型···········································································135 5.2 順序圖建模··················································································135 5.2.1 順序圖概述········································································136 5.2.2 順序圖的組成·····································································138 5.2.3 順序圖中的結構化控制·························································142 5.2.4 構造順序圖模型··································································143 5.3 通信圖建模··················································································144 5.3.1 通信圖的基本概念·······························································144 5.3.2 通信圖的組成·····································································146 5.3.3 通信圖與順序圖··································································147 5.3.4 構造通信圖模型··································································148 5.4 狀態機圖建模···············································································149 5.4.1 狀態機圖的基本概念····························································149 5.4.2 狀態機圖的組成··································································151 5.4.3 構造狀態機圖模型·······························································159 5.5 動態行為建模實例·········································································160 5.5.1 順序圖建模實例··································································160 5.5.2 狀態機圖建模實例·······························································165 本章小結···························································································166 本章習題···························································································166 第6章 繫統體繫結構與其他輔助模型··························································171 6.1 信息繫統體繫結構·········································································171 6.1.1 體繫結構的概念··································································171 6.1.2 信息繫統體繫結構的概念······················································171 6.1.3 分層架構···········································································172 6.1.4 C/S體繫結構和B/S體繫結構·················································173 6.1.5 微服務架構········································································174 6.2 包圖建模·····················································································175 6.2.1 包圖概念···········································································175 6.2.2 包之間的關繫·····································································177 6.2.3 包圖的作用········································································177 6.3 構件圖建模··················································································177 6.3.1 概念·················································································177 6.3.2 構件·················································································178 6.3.3 接口·················································································180 6.3.4 外部接口―端口·······························································180 6.3.5 連接器―連接件·······························································181 6.3.6 依賴關繫···········································································181 6.4 部署圖建模··················································································182 6.4.1 概念·················································································182 6.4.2 部署圖的組成·····································································183 6.4.3 繪制部署圖········································································185 6.5 體繫結構建模實例·········································································186 6.5.1 繫統部署圖········································································186 6.5.2 繫統體繫結構·····································································186 本章小結···························································································187 本章習題···························································································187 第7章 面向對像繫統設計·········································································189 7.1 面向對像設計的概念······································································189 7.1.1 面向對像設計·····································································189 7.1.2 面向對像設計的發展歷史······················································189 7.1.3 面向對像分析與面向對像設計的關繫·······································191 7.2 問題域設計··················································································192 7.2.1 問題域部分········································································192 7.2.2 進行問題域部分的設計的原因················································192 7.2.3 如何進行問題域的設計·························································192 7.2.4 問題域設計的內容·······························································192 7.3 數據管理部分設計·········································································196 7.3.1 數據庫和數據庫管理繫統······················································197 7.3.2 如何設計數據管理部分·························································1977.3.3 數據庫設計實例··································································200 7.4 界面設計·····················································································203 7.4.1 人機界面的概念··································································205 7.4.2 人機界面分類·····································································205 7.4.3 人機界面設計·····································································207 7.4.4 界面設計實例·····································································211 本章小結···························································································212 本章習題···························································································212 第8章 設計模式·····················································································214 8.1 設計模式的定義與起源···································································214 8.1.1 模式與設計模式··································································214 8.1.2 模式的起源········································································214 8.1.3 設計模式的基本要素····························································215 8.2 使用設計模式的原因······································································216 8.2.1 設計模式的作用··································································216 8.2.2 如何正確使用設計模式·························································217 8.3 設計模式的分類············································································218 8.3.1 GOF設計模式·····································································219 8.3.2 設計模式的優點··································································220 8.4 設計模式遵循的原則······································································221 8.5 典型設計模式···············································································223 8.5.1 簡單工廠模式·····································································223 8.5.2 工廠方法模式·····································································226 8.5.3 抽像工廠模式·····································································233 8.5.4 適配器模式········································································239 8.4.5 策略模式···········································································241 本章小結···························································································245 本章習題···························································································245
本書在繫統地介紹面向對像開發方法的基本概念和思想的基礎上,重點介紹UML及其建模技術在面向對像分析與設計中的應用,以及得到業界廣泛認同的軟件設計模式、數據建模的相關知識與應用,並以結合綜合案例進行介紹。全書共分8章,第1章從傳統開發方法存在的問題入手,重點介紹面向對像方法基本思想,從方法論方面讓學生對面向對像方法有一個整體的認識。第2章概括介紹UML以及UML與面向對像的統一開發過程。第3章重點圍繞需求分析介紹用例建模和活動圖建模。第4章為繫統分析與靜態結構建模,主要包括識別對像與類,定義類的屬性和操作以及類之間的關繫。第5章為重點圍繞順序圖建模、通信圖建模以及狀態機圖建模進行繫統動態結構建模。第6章圍繞包圖建模、構件圖建模和部署圖建模等進行繫統體繫結構建模。第7章為面向對像設計,首重點介紹問題域部分設計、人機交互設計以及數據管理部分設計的方法與應用。第8章專門介紹設計模式,對幾種經典的設等
張戈 著
"張戈,博士,副教授、碩士生導師,出生年月:1978年6月,學術方向:企業信息化理論與應用、IT價值。2003年7月研究生畢業留校至今在山東財經大學(原山東經濟學院)從事教學、科研工作。主持校級教改項目1項,主持校級精品課程1門。作為副主編參與編寫教材1部。近五年來,主持國家社科基金1項、省自然基金、民政部課題、濟南青年科技明星計劃各1項和橫向課題2項,作為主要完成人參與國家自然基金課題、省自然科學基金課題、省軟科學課題等各類課題10餘項;先後獲山東省科技進步三等獎1次,山東省高等學校優秀教學成果三等獎1次,山東財經大學優秀科研成果三等獎1次,山東財經大學教學成果一等獎1次。"