本書首先從數(shù)、信息談到計算基礎(chǔ)、計算工具、計算思維,這部分內(nèi)容其他軟件工程導(dǎo)論書一般不涉及,卻是軟件開發(fā)的基礎(chǔ)知識、基本理論,是軟件工程本質(zhì)性知識,從根源上理解軟件工程很重要;其次是從程序、軟件到軟件工程,循序漸進講解軟件工程的發(fā)生、發(fā)展、作用,是全書的核心;第三是從軟件知識體系和軟件行業(yè)對軟件人才的需求,定位到軟件人才的培養(yǎng)教育,為大家今后學(xué)習(xí)、工作指明方向。
更多科學(xué)出版社服務(wù),請掃碼獲取。
目錄
第1章 啟蒙 1
1.1 數(shù)的起源與發(fā)展 2
1.1.1 數(shù)的觀念的產(chǎn)生 2
1.1.2 數(shù)的歷史 3
1.1.3 數(shù)與量 5
1.2 計算與計算工具 7
1.2.1 計算場景 7
1.2.2 計算規(guī)則 7
1.2.3 古代計算工具 8
1.2.4 現(xiàn)代計算機 13
1.3 信息 15
1.3.1 信息的概念 16
1.3.2 信息的特征 16
1.3.3 對信息的認知 17
1.3.4 信息論 18
1.4 信息技術(shù) 19
1.4.1 信息技術(shù)的概念 19
1.4.2 信息技術(shù)的產(chǎn)生 19
1.4.3 信息技術(shù)的分類 20
1.4.4 現(xiàn)代信息技術(shù)分代 21
1.4.5 信息技術(shù)的發(fā)展 24
1.5 本章小結(jié) 25
思考練習(xí)題 25
第2章 計算基礎(chǔ) 27
2.1 計算的本質(zhì) 27
2.1.1 抽象模型 27
2.1.2 計算機的計算 28
2.1.3 計算特征 28
2.2 數(shù)的進制 29
2.2.1 數(shù)與數(shù)制 29
2.2.2 數(shù)制的表示 30
2.2.3 數(shù)制間的轉(zhuǎn)換 30
2.2.4 常用進制的轉(zhuǎn)換 32
2.3 數(shù)據(jù)的表示 34
2.3.1 萬物皆數(shù) 35
2.3.2 位與字節(jié) 35
2.3.3 數(shù)的表示原則 36
2.4 整數(shù)的表示 36
2.4.1 機器數(shù)的表示 36
2.4.2 二進制運算 38
2.4.3 整數(shù)的算術(shù)運算 39
2.4.4 補碼原理 43
2.5 實數(shù)的表示 46
2.5.1 浮點數(shù)概述 46
2.5.2 浮點數(shù)存儲格式 47
2.5.3 浮點數(shù)的取值范圍 50
2.5.4 浮點數(shù)的有效位數(shù) 50
2.5.5 浮點數(shù)的運算 51
2.6 信息的表示 52
2.6.1 信息表示概述 52
2.6.2 字符的表示 53
2.6.3 漢字的表示 54
2.6.4 聲音的表示 56
2.6.5 圖像和視覺表示 57
2.6.6 信息表示的三種狀態(tài) 57
2.7 本章小結(jié) 58
思考練習(xí)題 58
第3章 計算思維 60
3.1 思維與工具的相互作用 60
3.1.1 人類思維的發(fā)展 60
3.1.2 工具對思維的影響 61
3.2 計算思維的起源與發(fā)展 61
3.2.1 計算工具的影響 61
3.2.2 計算思維的概念 62
3.2.3 計算思維的核心 62
3.2.4 計算思維的特征 63
3.2.5 計算思維的發(fā)展 64
3.3 計算思維的問題求解 65
3.3.1 問題的求解 65
3.3.2 面向計算的抽象 65
3.3.3 求解方案算法化 66
3.3.4 算法設(shè)計策略 66
3.3.5 算法執(zhí)行工程化 73
3.4 計算思維應(yīng)用案例 74
3.4.1 案例問題描述 74
3.4.2 非計算思維問題的求解 75
3.4.3 計算思維問題的求解 75
3.5 本章小結(jié) 76
思考練習(xí)題 76
第4章 程序設(shè)計 78
4.1 機器語言 78
4.1.1 機器指令 78
4.1.2 指令系統(tǒng) 79
4.1.3 機器語言程序 80
4.2 匯編語言 80
4.2.1 匯編語言介紹 80
4.2.2 匯編程序 81
4.2.3 匯編語言編程 81
4.3 高級語言 85
4.3.1 高級語言基本概念 85
4.3.2 高級語言分類 85
4.3.3 主流語言簡介 88
4.3.4 最新語言介紹 92
4.4 程序設(shè)計介紹 94
4.4.1 程序設(shè)計簡介 94
4.4.2 程序基本結(jié)構(gòu) 94
4.4.3 程序設(shè)計思想 96
4.5 程序設(shè)計的發(fā)展 98
4.5.1 編程語言發(fā)展 98
4.5.2 編程的工程化發(fā)展 100
4.5.3 編程的其他發(fā)展 100
4.6 編程學(xué)習(xí)之路 102
4.6.1 將想法變?yōu)樗惴ǖ哪芰?102
4.6.2 自我學(xué)習(xí)能力 103
4.6.3 提升邏輯思維能力 103
4.6.4 應(yīng)用程序?qū)崿F(xiàn)目標(biāo) 103
4.6.5 培養(yǎng)有趣的業(yè)余愛好 103
4.7 本章小結(jié) 104
思考練習(xí)題 104
第5章 軟件工程 105
5.1 軟件概述與發(fā)展 105
5.1.1 軟件的概念 105
5.1.2 軟件發(fā)展歷史 106
5.1.3 軟件生命周期 106
5.2 軟件危機與工程 107
5.2.1 軟件危機的原因與表現(xiàn) 107
5.2.2 軟件危機案例 108
5.2.3 軟件工程的由來 109
5.2.4 軟件工程的含義 109
5.2.5 軟件工程的發(fā)展 110
5.3 軟件開發(fā)過程 113
5.3.1 需求分析 113
5.3.2 軟件設(shè)計 113
5.3.3 軟件構(gòu)造 114
5.3.4 軟件測試 115
5.4 軟件過程模型 115
5.4.1 瀑布模型 115
5.4.2 快速原型模型 116
5.4.3 增量模型 117
5.4.4 螺旋模型 118
5.4.5 統(tǒng)一軟件開發(fā)過程 119
5.4.6 敏捷軟件開發(fā) 120
5.5 軟件開發(fā)方法 121
5.5.1 開發(fā)方法的變化 121
5.5.2 結(jié)構(gòu)化系統(tǒng)分析和設(shè)計方法 122
5.5.3 面向?qū)ο蟮姆治龊驮O(shè)計方法 122
5.5.4 基于構(gòu)件的方法 123
5.5.5 面向服務(wù)的軟件開發(fā)方法 123
5.6 軟件工程管理 124
5.6.1 軟件項目規(guī)劃 124
5.6.2 項目團隊管理 125
5.6.3 項目溝通管理 126
5.6.4 能力成熟度模型 127
5.6.5 能力成熟度模型集成 127
5.7 本章小結(jié) 128
思考練習(xí)題 129
第6章 軟件人才與教育 130
6.1 軟件產(chǎn)業(yè) 130
6.1.1 軟件類型與領(lǐng)域 130
6.1.2 軟件產(chǎn)業(yè)發(fā)展歷史 133
6.1.3 中國軟件產(chǎn)業(yè) 135
6.2 軟件人才 136
6.2.1 軟件職業(yè)的發(fā)展 136
6.2.2 軟件人才評價 137
6.2.3 軟件人才的技能 138
6.2.4 軟件人才需求 139
6.3 軟件工程教育 140
6.3.1 軟件工程知識體系 140
6.3.2 軟件工程教育發(fā)展歷程 144
6.3.3 軟件工程與計算機科學(xué)教育 144
6.3.4 軟件工程教育的特點 144
6.4 本章小結(jié) 145
思考練習(xí)題 145
參考文獻 147