注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計C/C++及其相關C++面向對象開發(fā)

C++面向對象開發(fā)

C++面向對象開發(fā)

定 價:¥45.00

作 者: (美)Richard C. Lee,(美)William M. Tepfenhart著;麻志毅,蔣嚴冰譯;麻志毅譯
出版社: 機械工業(yè)出版社
叢編項: 面向對象技術實踐叢書
標 簽: 面向對象

購買這本書可以去


ISBN: 9787111105787 出版時間: 2002-09-01 包裝: 膠版紙
開本: 24cm 頁數: 460 字數:  

內容簡介

  面向對象技術是20世紀90年代對軟件的最大發(fā)展,它不但改變了建構軟件的方式,也改變了設計的方式,而C++則實現了面向對象的主要機制。因此,本書將面向對象技術與C++相結合,并使用UML這一可視化描述的建模語言進行表述。本書的目標是:通過應用面向對象技術和方法的基本原理來指導讀者在使用C++開發(fā)軟件和編程時適當考慮使用合適的面向對象的概念和良好的設計原則。本書還附有兩個完整的實踐案例,在案例中,使用特定的面向對象技術,并應用面向對象的基本概念就一個項目的面向對象分析、設計和編程的各個階段展開討論,詳細闡述了如何使用C++根據設計的模型進行編程,同時使讀者深入地掌握和理解面向對象技術的應用。

作者簡介

  Richard C.Lee有35年的軟件項目開發(fā)和管理經驗。在電子出版、嵌入式系統(tǒng)、大型IMS項目、多媒體、運行支持系統(tǒng)、過程控制、事務處理和模型轉換技術等領域,從事前沿的開發(fā)和管理工作。William M.Tepfenhart現在是蒙茅斯大學軟件工程系的副教授。在制造業(yè)、軍事和電信領域,作為程序員、開發(fā)人員和技術專家,有著18年的開發(fā)經驗。在其中的17年,他使用面向對象技術開發(fā)系統(tǒng)。他參加了對R++(一種在C++中加入了規(guī)則的編程語言)編譯器的開發(fā)工作。麻志毅,男,北京大學計算機科學技術系副教授。現已發(fā)表學術論文40余篇,主持或參加政府科研項目十余項。主要研究領域為軟件工程、面向對象技術和計算語言學。蔣嚴冰,男,2000年考入北京大學計算機科學技術系攻讀博士學位。主要研究方向為面向對象技術、軟件工程環(huán)境和軟件構件技術。

圖書目錄

譯者序
第2版序言
第1版序言
第1章 信息管理的困境
1.1 問題的提出
1.2 什么是客戶想要的
1.3 為什么面向對象對開發(fā)者是重要的
1.4 小結
第2章 管理復雜性:分析和設計
2.1 抽象機制
2.1.1 函數
2.1.2 模塊
2.1.3 抽象數據類型
2.2 類/對象
2.2.1 消息傳遞
2.2.2 泛化/特化和多態(tài)
2.3 其他的關系
2.3.1 關聯(lián)
2.3.2 聚合
2.4 行為
2.4.1 靜態(tài)行為
2.4.2 動態(tài)行為
2.5 規(guī)則
2.6 復雜系統(tǒng)
2.7 小結
第3章 面向對象的編程
3.1 什么是面向對象的編程
3.1.1 不是銀彈
3.1.2 一種高級的范圍
3.2 基本的面向對象編程概念
3.3 面向對象編程語言
3.3.1 基于對象的編程
3.3.2 基于類的編程
3.3.3 面向對象的編程
3.3.4 高級面向對象的編程
3.3.5 前沿面向對象的編程
3.4 為什么選C++
3.5 組織現實的方式
3.6 計算的模擬模型
3.7 組織現實的面向對象方式
3.8 小結
第4章 限定問題域
4.1 用況介紹
4.1.1 系統(tǒng)
4.1.2 參與者
4.1.3 用況
4.1.4 用況包
4.2 建立用況文檔
4.2.1 用況圖
4.2.2 順序圖:建立細節(jié)文檔
4.2.3 文本描述
4.3 開發(fā)用況的準則
4.3.1 避免分析癱瘓
4.3.2 識別參與者
4.3.3 識別高層用況和本質用況
4.3.4 建立用況包
4.3.5 開發(fā)用況細節(jié)
4.3.6 識別支持用況
4.3.7 開發(fā)邊界用況
4.4 契約
4.5 推薦的方法
4.6 小結
第5章 尋找對象
5.1 面向對象的分析:應用域的模型
5.2 構造面向對象模型
5.3 識別對象
5.4 目前的技術
5.4.1 使用將被建模的事物
5.4.2 使用對象和類的定義
5.4.3 使用對象分解
5.4.4 使用概括
5.4.5 使用子類
5.4.6 使用面向對象的領域分析
5.4.7 利用應用框架
5.4.8 復用類層次
5.4.9 復用個體對象和類
5.4.10 使用子部件
5.4.11 使用個人經驗
5.5 傳統(tǒng)的技術
5.5.1 使用名詞
5.5.2 使用傳統(tǒng)的數據流圖
5.5.3 使用類-責任-協(xié)作(CRC)卡片
5.6 推薦的方法
5.7 小結
第6章 識別責任
6.1 什么是對象
6.2 什么是屬性
6.2.1 描述性屬性
6.2.2 命名屬性
6.3 什么是服務
6.4 什么是方法
6.5 識別屬性
6.6 描述屬性
6.7 識別服務
6.8 描述服務
6.9 推薦的方法
6.10 小結
第7章 描述靜態(tài)行為
7.1 什么是行為
7.2 描述靜態(tài)行為的技術
7.3 描述控制的技術
7.4 建立控制文檔的技術
7.4.1 活動圖
7.4.2 協(xié)作圖
7.4.3 順序圖
7.5 建立靜態(tài)行為文檔的技術
7.5.1 前置條件和后置條件
7.5.2 流程圖
7.5.3 數據流圖
7.5.4 結構化英語
7.6 推薦的方法
7.7 小結
第8章 動態(tài)行為
8.1 介紹
8.2 識別動態(tài)行為的技術
8.2.1 一般的生存周期形式
8.2.2 捕獲生存周期的模型
8.3 識別事件和描述事件
8.3.1 用況和場景
8.3.2 順序圖
8.3.3 例子
8.4 描述動態(tài)行為
8.4.1 事件列表
8.4.2 狀態(tài)轉換表
8.5 建立動態(tài)行為的文檔
8.6 推薦的方法
8.7 小結
第9章 識別關系
9.1 訪問另一個對象的服務
9.2 關系
9.3 泛化
9.4 識別并描述泛化/特化
9.5 對象聚合
9.6 聚合的分類
9.6.1 組裝-部分(整體-成分組合)
9.6.2 材料-對象組合
9.6.3 劃分-對象組合
9.6.4 位置-區(qū)域組合
9.6.5 集合-成員組合
9.6.6 容器-容物(成員-束組合)
9.6.7 成員-合作組合
9.6.8 對象和聚合關系
9.7 對象之間的鏈
9.8 識別并描述鏈和聚合
9.9 管理關系
9.10 建立關系的文檔
9.11 推薦的方法
9.12 小結
第10章 規(guī)劃
10.1 介紹
10.2 規(guī)劃
10.3 識別說明性描述
10.4 描述規(guī)則和建立規(guī)則文檔
10.5 將規(guī)則映射為正確的OO概念
10.6 使用UML建立規(guī)劃的文檔
10.7 實現規(guī)則
10.8 推薦的方法
10.9 小結
第11章 模型
11.1 概念
11.2 概念和面向對象模型
11.2.1 類
11.2.2 關聯(lián)
11.2.3 類聚合
11.2.4 泛化/特化
11.2.5 多態(tài)
11.2.6 實例化
11.3 使用UML建立概念的文檔
11.3.1 類概念
11.3.2 關聯(lián)
11.3.3 類聚合
11.3.4 泛化/特化
11.3.5 多態(tài)
11.3.6 實例化
11.4 精化模型
11.5 子系統(tǒng)
11.5.1 問題域
11.5.2 橋
11.6 組織子系統(tǒng)
11.6.1 橫向分層
11.6.2 縱向劃分
11.6.3 組合
11.7 識別子系統(tǒng)
11.8 建立子系統(tǒng)文檔
11.9 推薦的方法
11.9.1 例子
11.9.2 精化
11.9.3 子系統(tǒng)
11.10 小結
第12章 設計
12.1 介紹
12.2 系統(tǒng)設計
12.2.1 子系統(tǒng)
12.2.2 體系結構框架
12.2.3 建立系統(tǒng)設計文檔
12.3 詳細設計
12.3.1 設計類
12.3.2 設計關聯(lián)
12.3.3 泛化和繼承
12.3.4 委托
12.3.5 Orlando條約
12.3.6 多繼承
12.3.7 建立詳細設計文檔
12.4 小結
第13章 C++基礎
13.1 歷史
13.2 編程元素
13.2.1 關鍵字
13.2.2 標識符
13.2.3 字面值
13.2.4 運算符
13.2.5 標點
13.3 固有數據類型
13.3.1 基本數據類型
13.3.2 常量值
13.3.3 符號變量
13.3.4 指針類型
13.3.5 常量類型
13.3.6 引用類型
13.3.7 枚舉類型
13.3.8 數組類型
13.3.9 typedef定義的類型名
13.4 什么是語句
13.4.1 表達式
13.4.2 復合語句
13.5 語句流控制
13.5.1 if語句
13.5.2 for語句
13.6 什么是函數
13.7 函數調用
13.7.1 函數定義
13.7.2 函數原型
13.7.3 內聯(lián)
13.8 存儲類
13.8.1 auto
13.8.2 extern
13.8.3 register
13.8.4 static
13.8.5 volatile
13.9 類型轉換
13.9.1 static_cast
13.9.2 const_cast
13.9.3 dynamic_cast
13.9.4 reinterpret_cast
13.10 名字空間
13.11 推薦的方法
13.12 小結
第14章 類的實現
14.1 類的組成部分
14.2 類定義
14.3 類的體
14.3.1 可見性
14.3.2 數據成員
14.3.3 成員函數
14.4 使用繼承的泛化
14.5 推薦的方法
14.6 小結
第15章 C++庫
15.1 C標準庫
15.1.1 <cassert>
15.1.2 <cctype>
15.1.3 <cerrno>
15.1.4 <cfloat>
15.1.5 <ciso646>
15.1.6 <climits>
15.1.7 <clocale>
15.1.8 <cmath>
15.1.9 <csetjmp>
15.1.10 <csignal>
15.1.11 <cstdarg>
15.1.12 <>cstddef
15.1.13 <>cstdio
15.1.14 <>cstdlib
15.1.15 <cstring>
15.1.16 <ctime>
15.1.17 <cwchar>
15.1.18 <cwctype>
15.2 C++類庫
15.2.1 <bits>
15.2.2 <bitstrng>
15.2.3 <complex>
15.2.4 <defines>
15.2.5 <dynarray>
15.2.6 <exceptions>
15.2.7 <fstream>
15.2.8 <iomanip>
15.2.9 <ios>
15.2.10 <iostream>
15.2.11 <istream>
15.2.12 <new>
15.2.13 <ostream>
15.2.14 <ptrdynarry>
15.2.15 <sstream>
15.2.16 <streambuf>
15.2.17 <string>
15.2.18 <strstream>
15.2.19 <typeinfo>
15.2.20 <wstring>
15.3 標準模板庫
15.3.1 <algorithm>
15.3.2 <bitset>
15.3.3 <complex>
15.3.4 <deque>
15.3.5 <functional>
15.3.6 <iterator>
15.3.7 <list>
15.3.8 <map>
15.3.9 <memory>
15.3.10 <numerics>
15.3.11 <queue>
15.3.12 <set>
15.3.13 <stack>
15.3.14 <utility>
15.3.15 <valarray>
15.3.16 <vector>
15.4 推薦的方法
15.5 小結
第16章 實現靜態(tài)行為
16.1 函數定義
16.1.1 返回類型
16.1.2 返回語句
16.1.3 函數參數表
16.2 傳遞參數
16.2.1 按值傳遞
16.2.2 引用或指針參數
16.3 返回類型為引用或指針
16.4 類型轉換
16.5 常量和缺省
16.5.1 常量
16.5.2 缺省初始化程序
16.6 標識符作用域
16.7 推薦的方法
16.7.1 在.h文件中定義
16.7.2 在.C文件中定義
16.8 小結
第17章 實現動態(tài)行為
17.1 動態(tài)行為的元素
17.1.1 簡單狀態(tài)圖
17.1.2 嵌套狀態(tài)圖
17.1.3 并發(fā)狀態(tài)圖
17.2 推薦的方法
17.3 小結
第18章 實例化和刪除對象
18.1 介紹
18.2 構造器
18.3 析構器
18.4 正確地使用構造器和析構器
18.5 泛化和構造器
18.6 推薦的方法
18.6.1 創(chuàng)建對象
18.6.2 銷毀對象
18.7 編碼準則
18.7.1 構造器編碼準則
18.7.2 析構器編碼準則
18.8 小結
第19章 實現泛化/特化
19.1 繼承
19.1.1 說明派生類
19.1.2 從派生類中繼承和實現關聯(lián)
19.1.3 增加多態(tài)
19.1.4 抽象類
19.2 多繼承
19.3 虛析構器
19.4 派生類的可見性
19.5 小結
第20章 實現更多的關系
20.1 介紹
20.1.1 實現關聯(lián)
20.1.2 實現關聯(lián)的屬性
20.1.3 實現聚合
20.2 指針
20.3 數組
20.4 友元
20.5 靜態(tài)成員
20.6 實現關聯(lián)
20.6.1 二元關聯(lián)
20.6.2 多對一關聯(lián)
20.6.3 多對多關聯(lián)
20.7 實現友元
20.7.1 類作為友元
20.7.2 函數作為友元
20.7.3 用友元實現一對多關聯(lián)
20.8 實現聚合
20.8.1 埋入指針
20.8.2 嵌入對象
20.9 實現靜態(tài)成員
20.10 推薦的方法
20.11 小結
第21章 案例分析介紹
21.1 案例分析1:突圍
21.1.1 需求
21.1.2 獲取領域知識
21.1.3 專家的知識
21.1.4 所提供的技術服務
21.2 案例分析2:微波爐
21.2.1 問題定義
21.2.2 一般描述
第22章 案例分析:突圍游戲
22.1 步驟1:發(fā)現對象
22.2 步驟2:識別責任
22.2.1 尋找形容詞
22.2.2 問題1
22.2.3 問題2
22.2.4 問題3
22.2.5 尋找服務
22.3 步驟3:描述行為
22.4 步驟4:描述關系
22.5 步驟5:精化
22.6 步驟6:設計
22.7 步驟7:實現
22.7.1 實現類
22.7.2 實現靜態(tài)行為
22.7.3 對象實例化
22.7.4 實現繼承
22.7.5 實現關系
第23章 案例分析:微波爐
23.1 用況
23.1.1 用況1:無中斷的烹飪
23.1.2 用況2:取消烹飪
23.1.3 用況3:中斷烹飪
23.2 解決方案1:設計控制器類
23.2.1 步驟1:發(fā)現對象
23.2.2 步驟2:識別責任
23.2.3 步驟3:描述行為
23.2.4 步驟4:描述關系
23.2.5 步驟5:精化
23.2.6 討論
23.3 解決方案2:具有高耦合的責任分配
23.3.1 步驟1:識別對象
23.3.2 步驟2:識別責任
23.3.3 步驟3:描述行為
23.3.4 步驟4:描述關系
23.3.5 步驟5:精化
23.3.6 討論
23.4 解決方案3:使用觀察者機制分配責任
23.4.1 步驟5:精化
23.4.2 論討
附錄A 統(tǒng)一建模語言
參考文獻
致謝
索引

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號