注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)基于案例的軟件構(gòu)造教程

基于案例的軟件構(gòu)造教程

基于案例的軟件構(gòu)造教程

定 價(jià):¥45.00

作 者: 李勁華,周強(qiáng),陳宇
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121282720 出版時(shí)間: 2016-06-01 包裝:
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 300 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)以一個(gè)案例的演變模擬不斷變化的用戶(hù)需求,按照增量迭代的開(kāi)發(fā)模式,將碎片化的功能開(kāi)發(fā)、用戶(hù)交互、數(shù)據(jù)處理等知識(shí),以及軟件設(shè)計(jì)、軟件測(cè)試和敏捷開(kāi)發(fā)的*佳實(shí)踐,與軟件開(kāi)發(fā)的原理、技術(shù)和工具融合到設(shè)計(jì)、編碼、調(diào)試及測(cè)試的構(gòu)造過(guò)程。內(nèi)容包括軟件構(gòu)造的一般原理(如模塊化、增量迭代)、常用技巧(如表驅(qū)動(dòng)編程、測(cè)試驅(qū)動(dòng)開(kāi)發(fā))、軟件設(shè)計(jì)(契約式設(shè)計(jì)、設(shè)計(jì)模式)、軟件知識(shí)(如軟件測(cè)試、軟件復(fù)用)以及軟件構(gòu)造的工作要素(如編碼規(guī)范、構(gòu)造工具)和活動(dòng)(如設(shè)計(jì)、編碼、測(cè)試、交付)。本書(shū)提供配套電子課件、案例源程序、例子代碼、教學(xué)參考方案等。本書(shū)面向計(jì)算機(jī)學(xué)科的本科學(xué)生,可作為“軟件構(gòu)造”、“Java面向?qū)ο笳n程設(shè)計(jì)”等課程的教材,也可作為“實(shí)用軟件工程”的參考書(shū),同時(shí)也適合學(xué)習(xí)軟件開(kāi)發(fā)的其他專(zhuān)業(yè)及愛(ài)好者參考。

作者簡(jiǎn)介

  李勁華,博士,教授,畢業(yè)于(德國(guó))斯圖加特大學(xué),青島大學(xué)軟件工程系系主任??萍疾繃?guó)際合作重大項(xiàng)目評(píng)審專(zhuān)家;《小型微型計(jì)算機(jī)系統(tǒng)》、《同濟(jì)大學(xué)學(xué)報(bào)》等核心期刊審稿人;曾任信息技術(shù)與計(jì)算機(jī)科學(xué)國(guó)際大會(huì)(ICIS 2008)分會(huì)主席。近五年,在國(guó)內(nèi)外發(fā)表學(xué)術(shù)論文30余篇,其中SCI檢索1篇、EI檢索10篇。參加國(guó)家和省自然科學(xué)基金項(xiàng)目2項(xiàng),主持完成橫向課題2項(xiàng)。主持或參與完成青島市軟件產(chǎn)業(yè)、“十一五”信息化發(fā)展、“十二五”科技發(fā)展、藍(lán)色經(jīng)濟(jì)區(qū)信息化建設(shè)等多項(xiàng)產(chǎn)業(yè)和戰(zhàn)略發(fā)展規(guī)劃。講授編譯原理、軟件測(cè)試、軟件工程、軟件項(xiàng)目管理、面向?qū)ο蠓治雠c設(shè)計(jì)、Java程序設(shè)計(jì)基礎(chǔ)等本科生課程,IT項(xiàng)目管理、軟構(gòu)件技術(shù)、軟件測(cè)試?yán)碚撆c技術(shù)、UML面向?qū)ο蠼!⑺惴ㄔO(shè)計(jì)與分析、軟件體系結(jié)構(gòu)等研究生課程。

圖書(shū)目錄

第1章  軟件開(kāi)發(fā)概述 1
1.1  程序與軟件 1
1.1.1  從程序到軟件 1
1.1.2  軟件類(lèi)型 2
1.1.3  程序設(shè)計(jì)與軟件開(kāi)發(fā) 2
1.2  軟件生存周期 4
1.2.1  使用角度的軟件生存周期 4
1.2.2  開(kāi)發(fā)角度的軟件生存周期 4
1.3  軟件開(kāi)發(fā)過(guò)程 6
1.3.1  瀑布式開(kāi)發(fā)過(guò)程 7
1.3.2  增量開(kāi)發(fā)模型 7
1.3.3  個(gè)體軟件過(guò)程 8
1.4  敏捷開(kāi)發(fā) 9
1.4.1  概述 10
1.4.2  Scrum方法 12
1.5  軟件構(gòu)造 13
1.5.1  有關(guān)概念 13
1.5.2  構(gòu)造與開(kāi)發(fā)過(guò)程 14
1.5.3  主要內(nèi)容 15
1.5.4  軟件構(gòu)造的重要性 15
1.6  為什么不直接編寫(xiě)軟件? 16
1.6.1  軟件開(kāi)發(fā)語(yǔ)言 16
1.6.2  編程工具與集成化開(kāi)發(fā)環(huán)境 18
1.6.3  軟件運(yùn)行環(huán)境 19
1.6.4  軟件開(kāi)發(fā)的最佳實(shí)踐 20
1.6.5  開(kāi)發(fā)過(guò)程與管理 22
1.7  案例導(dǎo)讀 23
1.8  思考與練習(xí)題 24
第2章  模塊化軟件構(gòu)造 25
2.1  分解與模塊化 26
2.1.1  分解的含義 26
2.1.2  模塊化與結(jié)構(gòu)化 28
2.2  數(shù)據(jù)結(jié)構(gòu)與算法 29
2.2.1  數(shù)據(jù)結(jié)構(gòu)與算法的關(guān)系 29
2.2.2  選擇與設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu) 30
2.2.3  選擇與設(shè)計(jì)算法 33
2.3  模塊化設(shè)計(jì)理論初步 35
2.3.1  模塊化原則 35
2.3.2  模塊的內(nèi)聚性 35
2.3.3  模塊間的耦合性 36
2.4  測(cè)試程序 38
2.4.1  測(cè)試需求 39
2.4.2  測(cè)試設(shè)計(jì)與測(cè)試用例 40
2.5  調(diào)試程序 41
2.5.1  缺陷的相關(guān)術(shù)語(yǔ) 42
2.5.2  調(diào)試基礎(chǔ) 42
2.6  案例分析與實(shí)踐 43
2.6.1  案例程序的初始構(gòu)造 43
2.6.2  無(wú)相同算式的基礎(chǔ)構(gòu)造 45
2.6.3  編程實(shí)現(xiàn)測(cè)試 47
2.7  討論與提高 51
2.7.1  軟件質(zhì)量 51
2.7.2  軟件測(cè)試的其他觀(guān)點(diǎn) 52
2.7.3  測(cè)試設(shè)計(jì) 52
2.7.4  編程風(fēng)格 57
2.8  思考與練習(xí)題 58
第3章  面向?qū)ο蟮能浖?gòu)造 60
3.1  抽象與封裝 60
3.1.1  模塊產(chǎn)生與合成 60
3.1.2  抽象與封裝 62
3.1.3  抽象數(shù)據(jù)類(lèi)型 63
3.2  認(rèn)識(shí)面向?qū)ο?64
3.2.1  設(shè)計(jì)類(lèi) 64
3.2.2  設(shè)計(jì)操作 65
3.2.3  分類(lèi) 66
3.3  面向?qū)ο蟮脑O(shè)計(jì) 67
3.3.1  面向?qū)ο蟮脑O(shè)計(jì)符號(hào) 68
3.3.2  案例設(shè)計(jì)一 69
3.3.3  案例設(shè)計(jì)二 72
3.4  調(diào)試的基本技術(shù) 79
3.4.1  單步調(diào)試源程序 80
3.4.2  檢查/更改變量的值 81
3.4.3  設(shè)置監(jiān)視點(diǎn)觀(guān)察變量 81
3.4.4  上下移動(dòng)調(diào)用棧 82
3.5  軟件自動(dòng)化測(cè)試 82
3.5.1  初識(shí)JUnit 82
3.5.2  編寫(xiě)JUnit測(cè)試代碼 84
3.6  案例分析與實(shí)踐 86
3.6.1  分析 86
3.6.2  構(gòu)造 87
3.7  討論與提高 89
3.7.1  對(duì)調(diào)試的進(jìn)一步認(rèn)識(shí) 89
3.7.2  設(shè)計(jì)原則與設(shè)計(jì)模式 90
3.7.3  面向?qū)ο蟮脑O(shè)計(jì)原則 92
3.8  思考與練習(xí)題 95
第4章  數(shù)據(jù)處理的軟件構(gòu)造 98
4.1  數(shù)據(jù)及其持久性 99
4.2  文件與輸入/輸出流 100
4.2.1  文件 100
4.2.2  輸入/輸出流 101
4.2.3  數(shù)據(jù)序列化 102
4.2.4  CSV格式的文本文件 103
4.3  編寫(xiě)健壯的程序 103
4.3.1  防御性編程 104
4.3.2  使用斷言 107
4.4  字符串處理與正則表達(dá)式 108
4.5  程序中數(shù)據(jù)集的使用 111
4.5.1  算式基 111
4.5.2  表驅(qū)動(dòng)編程 112
4.6  基于程序結(jié)構(gòu)的測(cè)試 114
4.6.1  語(yǔ)句覆蓋測(cè)試 115
4.6.2  程序控制流圖 115
4.6.3  邏輯覆蓋測(cè)試 116
4.6.4  路徑覆蓋測(cè)試 117
4.7  運(yùn)用JUnit 119
4.7.1  異常測(cè)試 119
4.7.2  參數(shù)化測(cè)試 120
4.7.3  測(cè)試套件 121
4.7.4  JUnit的斷言 122
4.7.5  JUnit使用指南 122
4.8  案例分析與實(shí)踐 122
4.8.1  批量生成100以?xún)?nèi)算式的習(xí)題 124
4.8.2  批改練習(xí)并存儲(chǔ) 125
4.8.3  算式基的構(gòu)造與應(yīng)用 127
4.9  討論與提高 129
4.9.1  應(yīng)用表驅(qū)動(dòng)編程 129
4.9.2  使用文件還是數(shù)據(jù)庫(kù) 131
4.9.3  契約式編程 131
4.10  思考與練習(xí)題 132
第5章  用戶(hù)交互的軟件構(gòu)造 135
5.1  程序及其功能的使用 136
5.1.1  程序的兩個(gè)觀(guān)察視角 136
5.1.2  多個(gè)功能程序的整合 136
5.1.3  多個(gè)功能的組織與呈現(xiàn) 137
5.1.4  基于菜單式功能選擇的
用戶(hù)交互 138
5.2  用戶(hù)交互概述 143
5.2.1  基本概念 143
5.2.2  交互設(shè)備 143
5.2.3  交互風(fēng)格 143
5.2.4  交互界面 144
5.2.5  交互設(shè)計(jì)的原則 145
5.3  用戶(hù)交互的開(kāi)發(fā) 146
5.3.1  交互設(shè)計(jì)基本過(guò)程 146
5.3.2  快速原型法 147
5.4  靜態(tài)測(cè)試 148
5.4.1  程序的可用性與靜態(tài)測(cè)試 148
5.4.2  桌面檢查 148
5.4.3  代碼走查 149
5.4.4  正式審查 149
5.4.5  同行評(píng)審 149
5.4.6  檢查表 150
5.4.7  靜態(tài)程序分析 150
5.5  軟件集成與測(cè)試 151
5.5.1  驅(qū)動(dòng)模塊和樁模塊 152
5.5.2  集成策略 153
5.5.3  回歸測(cè)試 154
5.5.4  集成測(cè)試與策略 154
5.6  案例分析與實(shí)踐 156
5.6.1  分析與設(shè)計(jì) 156
5.6.2  案例程序的菜單式用戶(hù)交互的構(gòu)造 157
5.6.3  循環(huán)語(yǔ)句的路徑測(cè)試 163
5.7  討論與提高 164
5.7.1  軟件建模 164
5.7.2  基于模型的測(cè)試 165
5.7.3  執(zhí)行函數(shù)名符號(hào)串的表驅(qū)動(dòng)編程 167
5.7.4  持續(xù)集成 168
5.8  思考與練習(xí)題 169
第6章  軟件重構(gòu)與交付 171
6.1  代碼重構(gòu) 171
6.1.1  代碼重構(gòu)的案例研究 171
6.1.2  代碼重構(gòu)概述 182
6.2  軟件交付 183
6.2.1  構(gòu)建與打包 183
6.2.2  實(shí)現(xiàn)構(gòu)建自動(dòng)化的工具 184
6.2.3  Java程序的打包與交付 187
6.3  案例分析與實(shí)踐 189
6.3.1  代碼重構(gòu)的案例分析 189
6.3.2  代碼重構(gòu)實(shí)踐 190
6.3.3  提交案例程序 191
6.4  討論與提高 192
6.4.1  測(cè)試層次 192
6.4.2  測(cè)試驅(qū)動(dòng)開(kāi)發(fā) 193
6.4.3  軟件交付及其發(fā)展 200
6.5  思考與練習(xí)題 200
第7章  GUI軟件構(gòu)造 202
7.1  GUI簡(jiǎn)介 202
7.1.1  GUI發(fā)展軌跡 202
7.1.2  Java GUI的構(gòu)造工具 202
7.2  GUI的基本元素與設(shè)計(jì)規(guī)范 203
7.2.1  GUI的基本元素 204
7.2.2  GUI基本設(shè)計(jì)規(guī)范 207
7.3  Java GUI設(shè)計(jì)模式 207
7.3.1  觀(guān)察者模式 208
7.3.2  MVC模式 210
7.4  事件驅(qū)動(dòng)編程 210
7.4.1  事件捕捉與處理 210
7.4.2  焦點(diǎn)事件和Tab順序 212
7.4.3  實(shí)例講解 212
7.5  案例分析與實(shí)踐 215
7.5.1  探路的GUI構(gòu)造任務(wù) 215
7.5.2  重構(gòu)GUI構(gòu)造任務(wù) 219
7.6  討論與提高 226
7.6.1  GUI的設(shè)計(jì)原則 226
7.6.2  GUI的測(cè)試 228
7.7  思考與練習(xí)題 229
第8章  應(yīng)用數(shù)據(jù)庫(kù) 230
8.1  數(shù)據(jù)庫(kù)概述 230
8.1.1  關(guān)系數(shù)據(jù)庫(kù) 230
8.1.2  關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)模型 234
8.2  結(jié)構(gòu)化查詢(xún)語(yǔ)言SQL 234
8.2.1  SQL概述 234
8.2.2  創(chuàng)建基本表的CREATE
語(yǔ)句 235
8.2.3  插入元組的INSERT語(yǔ)句 237
8.2.4  刪除元組的DELETE語(yǔ)句 237
8.2.5  更新元組的UPDATE語(yǔ)句 238
8.2.6  選擇元組的SELECT語(yǔ)句 238
8.3  數(shù)據(jù)庫(kù)的開(kāi)發(fā)過(guò)程 242
8.4  編程操作數(shù)據(jù)庫(kù) 246
8.4.1  連接數(shù)據(jù)庫(kù) 246
8.4.2  查詢(xún)數(shù)據(jù)庫(kù) 248
8.5  案例分析與實(shí)踐 250
8.5.1  分析與設(shè)計(jì) 250
8.5.2  設(shè)計(jì)數(shù)據(jù)庫(kù) 250
8.5.3  開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序 251
8.6  討論與提高 255
8.6.1  事務(wù)與并發(fā) 255
8.6.2  使用存儲(chǔ)過(guò)程 257
8.6.3  查詢(xún)優(yōu)化――消除不必要的循環(huán) 259
8.6.4  測(cè)試數(shù)據(jù)庫(kù) 260
8.7  思考與練習(xí)題 261
第9章  基于復(fù)用的軟件構(gòu)造 263
9.1  軟件復(fù)用 263
9.1.1  軟件產(chǎn)品復(fù)用 264
9.1.2  基于復(fù)用的軟件開(kāi)發(fā) 265
9.1.3  程序庫(kù) 266
9.2  設(shè)計(jì)模式 267
9.2.1  基本概念 267
9.2.2  基本設(shè)計(jì)模式目錄 267
9.2.3  設(shè)計(jì)模式舉例 267
9.3  框架 274
9.3.1  基本概念 274
9.3.2  框架和設(shè)計(jì)模式 276
9.3.3  框架開(kāi)發(fā) 276
9.3.4  軟件測(cè)試框架JUnit 277
9.4  案例分析與實(shí)踐 277
9.4.1  生成Word格式的習(xí)題 277
9.4.2  口算習(xí)題練習(xí)得分的可視化展示 283
9.4.3  完整案例的軟件構(gòu)造 287
9.5  討論與提高 287
9.5.1  案例的Web應(yīng)用程序 287
9.5.2  Android應(yīng)用框架 288
9.6  思考與練習(xí)題 288
參考文獻(xiàn) 290

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)