軟體設計師教程(第二版)

《軟體設計師教程(第二版)》是2006年6月1日清華大學出版社出版的圖書,作者是陳平。本書主要講述了計算機系統、程式語言的基本知識都有關內容。

目錄

第1章 計算機系統知識 1

1.1 計算機體系結構 1

1.1.1 計算機體系結構的發展 1

1.1.2 存儲系統 3

1.1.3 CISC/RISC 13

1.1.4 輸入/輸出技術 14

1.1.5 流水線操作 20

1.1.6 匯流排結構 22

1.1.7 多處理機與並行處理 23

1.2 安全性、可靠性與系統性能

評測基礎知識 28

1.2.1 計算機安全概述 28

1.2.2 加密技術 30

1.2.3 認證技術 34

1.2.4 計算機可靠性 38

1.2.5 計算機系統的性能評價 41

1.2.6 計算機故障診斷與容錯 45

第2章 程式語言基礎知識 48

2.1 程式語言概述 48

2.1.1 程式語言的基本概念 48

2.1.2 程式設計語言的種類和特點 49

2.1.3 程式語言的基本成分 53

2.2 語言處理程式基礎 59

2.2.1 彙編語言基本原理 59

2.2.2 編譯程式基本原理 62

2.2.3 解釋程式基本原理 90

第3章 作業系統知識 93

3.1 作業系統基礎知識 93

3.1.1 作業系統的定義與作用 93

3.1.2 作業系統的特徵與功能 94

3.1.3 作業系統的類型 95

3.2 處理機管理 98

3.2.1 基本概念 98

3.2.2 進程的控制 102

3.2.3 進程間的通信 104

3.2.4 管程 109

3.2.5 進程調度 111

3.2.6 死鎖 112

3.2.7 執行緒 115

3.3 存儲管理 116

3.3.1 基本概念 117

3.3.2 分頁存儲管理 118

3.3.3 虛擬存儲管理 120

3.4 設備管理 125

3.4.1 設備管理概述 125

3.4.2 I/O軟體 127

3.4.3 通道、DMA與緩衝技術 130

3.4.4 Spooling技術 132

3.4.5 磁碟調度 133

3.5 檔案管理 134

3.5.1 檔案與檔案系統 134

3.5.2 檔案的結構和組織 136

3.5.3 檔案目錄 139

3.5.4 存取方法和存儲空間的管理 141

3.5.5 檔案的使用 142

3.5.6 檔案的共享和保護 142

3.5.7 系統的安全與可靠性 144

3.6 作業管理 146

3.6.1 作業管理和作業控制 146

3.6.2 作業調度 147

3.6.3 用戶界面 148

3.7 網路作業系統和嵌入式操作

系統基礎知識 149

3.7.1 網路作業系統 149

3.7.2 嵌入式作業系統 151

3.8 作業系統實例 152

3.8.1 UNIX作業系統 152

3.8.2 Windows 2000/XP

作業系統 159

第4章 系統開發和運行知識 165

4.1 軟體工程基礎知識 165

4.1.1 軟體工程概述 165

4.1.2 軟體需求分析 169

4.1.3 軟體開發項目管理 171

4.1.4 軟體配置管理 176

4.1.5 軟體工具與軟體開發環境 178

4.1.6 軟體過程管理 181

4.1.7 軟體質量管理與質量保證 183

4.2 系統分析基礎知識 191

4.2.1 系統分析概述 191

4.2.2 結構化分析方法 193

4.2.3 系統分析報告 199

4.3 系統設計知識 200

4.3.1 系統設計的內容和步驟 200

4.3.2 系統設計的基本原理 202

4.3.3 系統總體結構設計 204

4.3.4 結構化設計方法 208

4.3.5 面向數據結構的設計方法 210

4.3.6 系統詳細設計 212

4.4 系統實施知識 217

4.4.1 系統實施概述 217

4.4.2 程式設計 218

4.4.3 系統測試與調試 221

4.4.4 測試策略和測試方法 222

4.4.5 調試 226

4.4.6 系統文檔 227

4.4.7 系統轉換 228

4.5 系統運行和維護知識 229

4.5.1 系統維護概述 229

4.5.2 系統評價 233

第5章 網路基礎知識 235

5.1 網路概述 235

5.1.1 計算機網路的概念 235

5.1.2 計算機網路的分類 238

5.1.3 網路的拓撲結構 239

5.2 ISO/OSI網路體系結構 241

5.3 網路互連硬體 244

5.3.1 網路的設備 244

5.4.2 網路的傳輸介質 247

5.3.3 組建網路 249

5.4 網路的協定與標準 252

5.4.1 網路的標準 253

5.4.2 區域網路協定 254

5.4.3 廣域網協定 258

5.4.4 Internet協定 263

5.5 Internet及套用 268

5.5.1 Internet概述 268

5.5.2 Internet地址 269

5.5.3 Internet服務 273

5.6 WindowsNT系統及管理 278

5.6.1 Windows NT概述 279

5.6.2 WindowsNT系統管理 283

5.7 網路安全 285

5.7.1 網路安全概述 285

5.7.2 網路的信息安全 287

5.7.3 防火牆技術 291

第6章 多媒體基礎知識 298

6.1 多媒體的基本概念 298

6.1.1 媒體的分類 298

6.1.2 多媒體的特徵 299

6.2 音頻 300

6.2.1 數字聲音基礎 300

6.2.2 波形聲音 302

6.2.3 聲音合成 304

6.2.4 MIDI 306

6.2.5 聲音檔案格式 307

6.3 圖形和圖像 308

6.3.1 彩色與圖像基礎 308

6.3.2 計算機中的圖形數據表示 310

6.3.3 圖像的獲取 311

6.3.4 圖像的屬性 312

6.3.5 圖形圖像轉換 313

6.3.6 圖像的壓縮編碼 314

6.3.7 多媒體數據壓縮編碼的

國際標準 316

6.3.8 圖形、圖像檔案格式 317

6.4 動畫和視頻 319

6.4.1 動畫 319

6.4.2 模擬視頻 322

6.4.3 數字視頻 323

6.4.4 數字視頻標準 324

6.4.5 視頻壓縮編碼 325

6.4.6 視頻檔案格式 327

6.5 多媒體網路 328

6.5.1 超文本與超媒體 329

6.5.2 流媒體的基本概念 330

6.5.3 網際網路上獲取聲音和

影視的方法 330

6.6 多媒體計算機系統 332

6.6.1 多媒體計算機硬體系統 333

6.6.2 多媒體軟體系統 335

6.7 虛擬現實的概念 338

第7章 資料庫技術基礎 342

7.1 基本概念 342

7.1.1 資料庫與資料庫管理系統 342

7.1.2 DBMS的功能 343

7.1.3 DBMS的特徵及分類 344

7.1.4 資料庫的三級模式結構 345

7.2 數據模型 348

7.2.1 數據模型的基本概念 348

7.2.2 數據模型的三要素與

常用的數據模型 349

7.2.3 E-R模型 349

7.2.4 層次模型 356

7.2.5 網狀模型 357

7.2.6 關係模型 358

7.3 關係代數 359

7.3.1 關係資料庫的基本概念 359

7.3.2 5種基本的關係代數運算 364

7.3.3 擴展的關係代數運算 366

7.4 關係資料庫SQL語言簡介 374

7.4.1 SQL資料庫體系結構 374

7.4.2 SQL的基本組成 376

7.4.3 SQL數據定義 376

7.4.4 SQL數據查詢 380

7.4.5 SQL數據更新 389

7.4.6 SQL的訪問控制 390

7.4.7 嵌入式SQL 392

7.5 關係資料庫規範化 393

7.5.1 函式依賴 393

7.5.2 規範化 394

7.5.3 模式分解及分解

應具有的特性 397

7.6 資料庫的控制功能 402

7.6.1 事務管理 402

7.6.2 資料庫的備份與恢復 403

7.6.3 並發控制 404

7.6.4 安全性和授權 406

第8章 數據結構 412

8.1 線性結構 412

8.1.1 線性表 412

8.1.2 棧和佇列 416

8.1.3 串 430

8.2 數組、矩陣和廣義表 435

8.2.1 數組 435

8.2.2 矩陣 437

8.2.3 廣義表 438

8.3 樹 439

8.3.1 樹的定義及基本運算 439

8.3.2 二叉樹的定義及基本運算 441

8.3.3 二叉樹的性質 441

8.3.4 二叉樹的存儲結構 442

8.3.5 二叉樹的遍歷 444

8.3.6 線索二叉樹 446

8.3.7 二叉樹的套用:最優二叉樹 448

8.3.8 樹和森林 452

8.4 圖 454

8.4.1 圖的定義 455

8.4.2 圖的存儲結構 456

8.4.3 圖的遍歷 458

8.4.4 生成樹及最小生成樹 461

8.4.5 拓撲排序和關鍵路徑 463

8.4.6 最短路徑 466

8.4.7 圖的套用 469

8.5 查找 471

8.5.1 查找的基本概念 471

8.5.2 靜態查找表 472

8.5.3 動態查找表 476

8.5.4 哈希表及其查找 486

8.6 排序 489

8.6.1 排序的基本概念及運算 489

8.6.2 簡單排序 490

8.6.3 希爾排序 492

8.6.4 快速排序 493

8.6.5 堆排序 494

8.6.6 歸併排序 497

8.6.7 基數排序 498

8.6.8 內部排序方法的比較和選擇 499

8.6.9 外部排序 500

第9章 常用算法設計方法 504

9.1 算法和算法設計基本概念 504

9.1.1 算法 504

9.1.2 算法設計 504

9.1.3 算法效率的度量 505

9.1.4 算法的存儲空間需求 506

9.2 疊代法、窮舉搜尋法、遞推法 506

9.2.1 疊代法 506

9.2.2 窮舉搜尋法 506

9.2.3 遞推法 507

9.3 遞歸法 508

9.4 分治法 512

9.4.1 分治法的基本思想 512

9.4.2 分治法的典型實例 513

9.5 動態規劃法 517

9.5.1 動態規劃法的基本思想 517

9.5.2 動態規劃法的典型實例 518

9.6 回溯法 522

9.6.1 回溯法的算法框架 523

9.6.2 回溯法的典型實例 525

9.7 貪心法 532

9.8 分支限界法 536

9.9 機率算法簡介 538

第10章 面向對象技術 539

10.1 面向對象的基本概念 539

10.2 面向對象程式設計 541

10.2.1 面向對象的好處 542

10.2.2 面向對象程式設計語言 542

10.2.3 程式設計語言中的

OOP機制 545

10.2.4 面向對象的程式 550

10.3 面向對象開發技術 553

10.3.1 面向對象分析 553

10.3.2 面向對象設計 555

10.3.3 面向對象測試 555

10.4 面向對象分析與設計方法 556

10.4.1 Peter Coad和Edward

Yourdon的OOA和

OOD方法 556

10.4.2 Booch的OOD方法 558

10.4.3 OMT方法 558

10.4.4 UML概述 561

10.5 設計模式 570

10.5.1 設計模式的要素 570

10.5.2 創建型設計模式 571

10.5.3 結構型設計模式 572

10.5.4 行為設計模式 573

第11章 標準化基礎知識 577

11.1 標準化的基本概念 577

11.1.1 標準、標準化的概念 577

11.1.2 標準化的範圍和對象 577

11.1.3 標準化的實質 578

11.1.4 標準化的目的 579

11.2 標準化過程模式 579

11.2.1 標準的制定 579

11.2.2 標準的實施 580

11.2.3 標準的更新 580

11.3 標準的分類 581

11.3.1 根據適用範圍分類 581

11.3.2 根據標準的性質分類 583

11.3.3 根據標準化的對象和

作用分類 584

11.3.4 根據法律的約束性分類 586

11.4 標準的代號和編號 586

11.5 國際標準和國外先進標準 588

11.5.1 國際標準 588

11.5.2 國外先進標準 588

11.5.3 採用國際標準和國外

先進標準 589

11.5.4 採用程度的概念 589

11.5.5 採用國際標準和國外

先進標準的原則 590

11.6 信息技術標準化 591

11.6.1 信息編碼標準化 591

11.6.2 條碼標準化 592

11.6.3 漢字編碼標準化 592

11.6.4 軟體工程標準化 592

11.7 標準化組織 594

11.7.1 國際標準化組織 594

11.7.2 區域標準化組織 595

11.7.3 行業標準化組織 596

11.7.4 國家標準化組織 596

11.8 ISO9000標準簡介 597

11.8.1 ISO9000標準 597

11.8.2 ISO9000:2000系列標準

檔案結構 598

11.8.3 ISO9000:2000核心

標準簡介 598

11.8.4 ISO9000:2000系列標

準確認的八項原則 599

11.9 能力成熟度模型CMM簡介 602

11.10 ISO/IEC 15504過程評估標準簡介 604

第12章 智慧財產權基礎知識 607

12.1 智慧財產權的概念與特點 607

12.1.1 智慧財產權的概念 607

12.1.2 智慧財產權的特點 608

12.1.3 我國保護智慧財產權的法規 610

12.2 計算機軟體著作權的主體與客體 610

12.2.1 計算機軟體著作權的主體 610

12.2.2 計算機軟體著作權的客體 611

12.3 計算機軟體受著作權法保護的條件 612

12.4 計算機軟體著作權的權利 613

12.4.1 計算機軟體的著作人身權 613

12.4.2 計算機軟體的著作財產權 613

12.4.3 軟體合法持有人的權利 614

12.4.4 計算機軟體著作權的行使 614

12.4.5 計算機軟體著作權的保護期 615

12.5 計算機軟體著作權的歸屬 615

12.5.1 軟體著作權歸屬的基本原則 615

12.5.2 職務開發軟體著作權的歸屬 615

12.5.3 合作開發軟體著作權的歸屬 617

12.5.4 委託開發軟體著作權的歸屬 617

12.5.5 接受任務開發軟體

著作權的歸屬 618

12.5.6 計算機軟體著作權主體

變更後軟體著作權的歸屬 618

12.6 計算機軟體著作權侵權的鑑別 620

12.6.1 計算機軟體著作權侵權行為 620

12.6.2 不構成計算機軟體侵權的

合理使用行為 622

12.6.3 計算機著作權軟體

侵權的識別 622

12.7 軟體著作權侵權的法律責任 623

12.8 計算機軟體的商業秘密權 625

12.8.1 商業秘密的概念 625

12.8.2 計算機軟體商業秘密的侵權 626

12.8.3 計算機軟體商業秘密

侵權的法律責任 626

12.9 專利權概述 627

12.9.1 專利權的保護對象與特徵 627

12.9.2 授予專利權的條件 628

12.9.3 專利的申請 629

12.9.4 專利權行使 630

12.9.5 專利權的限制 631

12.9.6 專利侵權行為 632

12.10 企業智慧財產權的保護 632

12.10.1 智慧財產權管理 632

12.10.2 智慧財產權的保護和利用 633

12.10.3 建立經濟約束機制規範調整各種關係

相關詞條

熱門詞條

聯絡我們