出版時間:2009-9 出版社:清華大學出版社 作者:許薇,方修豐 編著 頁數(shù):201
前言
計算機問世以后,在世界范圍內(nèi),幾乎全部的行業(yè)和部門管理工作都使用了計算機,因而使管理工作出現(xiàn)了高效率、快節(jié)奏,而且節(jié)省了很多人力、物力,其經(jīng)濟效益是無法計量的。對于計算機本身來說,這些顯著的成就更加取決于對軟件的依賴。將現(xiàn)實世界的情況準確地映射到計算機中,以求解決面臨的問題是程序設(shè)計所追求的目標。長期以來,人們一直研究科學的方法和技術(shù)來解決由需求增加導致的需要依靠計算機來完成的各種問題。面向過程的程序設(shè)計方法在一個歷史時期內(nèi)適應了這種情況,成為程序設(shè)計的首選。隨著問題規(guī)模的擴大,面向過程的方法和技術(shù)已經(jīng)不能夠適應新的發(fā)展。面向?qū)ο蠓椒ǖ幕舅枷胧菑默F(xiàn)實世界中客觀存在的事物出發(fā)來構(gòu)造軟件系統(tǒng),在系統(tǒng)構(gòu)造中盡可能地運用人類的自然思維方式。其開發(fā)本質(zhì)是應用領(lǐng)域內(nèi)概念的鑒別和組織,而不是它們在一種程序設(shè)計語言中的最終表示。面向?qū)ο笳Z言是一類以對象作為基本程序結(jié)構(gòu)單位的程序設(shè)計語言,用于描述的設(shè)計是以對象為核心,而對象是程序運行時刻的基本成分,語言中提供了類、繼承等成分。面向?qū)ο笏枷氲膶嵺`依賴于面向?qū)ο笳Z言的實現(xiàn)。面向?qū)ο蠓椒ǖ陌l(fā)展推動了面向?qū)ο笳Z言的不斷出現(xiàn)和進步。目前支持面向?qū)ο蟮恼Z言有很多種,其中C++和Java最能夠體現(xiàn)面向?qū)ο蟮乃枷?。C++是一種廣泛使用的支持面向?qū)ο蠹夹g(shù)的程序設(shè)計語言,同時也保留了C語言的靈活性特點??紤]到以C語言為代表的面向過程語言的普及性,本書采用了C++作為描述工具,以求達到盡可能強的適應性。面向?qū)ο蠓椒ǖ暮诵膬r值體現(xiàn)在類的設(shè)計和代碼復用理念。運用一種面向?qū)ο笳Z言為工具來表述面向?qū)ο蟮乃枷牒头椒ㄊ亲珜懕緯哪康?,因此具體的C++語法規(guī)范不是本書的論述重點。根據(jù)本書的編排,讀者們能夠掌握面向?qū)ο蟪绦蛟O(shè)計的基本方法,并學會利用C++程序設(shè)計語言編寫具有面向?qū)ο筇卣鞯某绦虼a,從中體會出面向?qū)ο蟪绦蛟O(shè)計的精髓。全書由8個章節(jié)和2個附錄構(gòu)成。第1章C++基礎(chǔ)知識,簡要介紹了C++語言的部分知識,這些知識主要為后面采用C++工具描述面向?qū)ο蟮乃枷牒头椒ㄌ峁┝思夹g(shù)支撐; 第2章面向?qū)ο蟪绦蛟O(shè)計概述,主要介紹面向?qū)ο蟪绦蛟O(shè)計所涉及的基本概念和基本方法,重點表述了面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計、面向?qū)ο髮崿F(xiàn)及面向?qū)ο蟮臏y試和軟件維護; 第3章類與對象,主要介紹對象和類的產(chǎn)生機制,以及采用C++語言對其實現(xiàn)的方法; 第4章繼承和派生,主要講述了面向?qū)ο蠓椒ㄖ写a重用問題,并采用C++語言予以實現(xiàn); 第5章多態(tài)性,主要講述在代碼復用的基礎(chǔ)上如何使程序的表示形式與程序的表達內(nèi)容盡可能無關(guān); 第6章模板,模板提供了數(shù)據(jù)類型的靈活性,并且支持了編譯時的語法檢查,極大地提高了程序的可重用性; 第7章異常,主要介紹異常的處理思想和C++的異常處理機制; 第8章流類庫,流類庫是C++語言利用繼承組織類層次的典范,通過介紹流類庫和它的使用方法來體現(xiàn)面向?qū)ο蟪绦蛟O(shè)計思想。附錄中對采用Visual C++6.0調(diào)試程序的方法做了必要的描述。本書中列舉了大量實例,大部分的程序均已在 Visual C++6.0下調(diào)試通過,由于Visual C++6.0對標準C++規(guī)范的改變,使它不能夠完成全部例程的調(diào)試,所以采用了Cfree4.0調(diào)試了部分程序。與其他面向?qū)ο蟪绦蛟O(shè)計書籍相比較,本書有以下幾個特點: 主旨明確,拋開語法細節(jié),直入核心理念。舉例精簡,力求以簡明表述說明內(nèi)在本質(zhì),防止陷入程序細節(jié)而妨礙對知識點的理解。環(huán)節(jié)驅(qū)動,章前有導讀,章后有總結(jié)并輔以思考問答使讀者學前有所思學后有收獲。脈絡(luò)清晰,知識章節(jié)編排突出循序漸進的原則,使讀者能夠系統(tǒng)地掌握面向?qū)ο蠹夹g(shù)的基礎(chǔ)知識、基本技能。形成嚴密的邏輯思維能力,進而掌握面向?qū)ο蟪绦蛟O(shè)計的思想和方法。本書適合于具有結(jié)構(gòu)化程序設(shè)計方法知識的讀者使用,可作為計算機專業(yè)學生面向?qū)ο蟪绦蛟O(shè)計課程的教材,也可作為從事計算機軟件開發(fā)人員的參考資料。在本書的編寫過程中,我們參考和引用了國內(nèi)外同行的書籍和文獻,在此,向被引用文獻的作者以及給予本書幫助的所有人士表示衷心的感謝!盡管作者是多年從事面向?qū)ο蟪绦蛟O(shè)計教學的一線教師,有著比較豐富的教學經(jīng)驗,由于面向?qū)ο蠹夹g(shù)的快速發(fā)展,我們難以對面向?qū)ο蟪绦蛟O(shè)計的最新成果加以全面表述,更由于作者的學識水平限制,書中尚有不足和錯誤之處,懇請讀者予以批評指正,以便再版時修訂。
內(nèi)容概要
本書以C++語言為描述工具,描述了面向?qū)ο蟪绦蛟O(shè)計的主要思想和方法,并對其中的重要概念和機制做了詳細論述及C++技術(shù)的實現(xiàn)。書中知識編排脈絡(luò)清晰、主旨明確,用例簡潔且針對性強,突出并實現(xiàn)了閱讀環(huán)節(jié)對學習效果的價值?! ”緯m合于具有結(jié)構(gòu)化程序設(shè)計方法知識的讀者使用,可作為計算機專業(yè)學生面向?qū)ο蟪绦蛟O(shè)計課程的教材,也可作為從事計算機軟件開發(fā)人員的參考資料。
書籍目錄
第1章 C++基礎(chǔ)知識 1.1 面向?qū)ο蟮某绦蛟O(shè)計語言 1.1.1 C++語言 1.1.2 Java語言 1.1.3 Visual Basic語言 1.2 變量 1.2.1 變量的定義方法 1.2.2 const修飾符 1.2.3 引用類型 1.3 函數(shù) 1.3.1 函數(shù)原型 1.3.2 內(nèi)聯(lián)函數(shù) 1.3.3 帶默認參數(shù)的函數(shù) 1.3.4 函數(shù)的參數(shù)傳遞 1.3.5 函數(shù)重載 1.4 名字空間 1.5 動態(tài)內(nèi)存分配 1.5.1 內(nèi)存申請 1.5.2 內(nèi)存釋放 1.6 作用域 1.6.1 生存期 1.6.2 全局和局部變量 1.7 多文件結(jié)構(gòu) 本章小結(jié) 思考與練習第2章 面向?qū)ο蟪绦蛟O(shè)計概述 2.1 面向?qū)ο蟪绦蛟O(shè)計的基本概念 2.1.1 面向?qū)ο蠓椒ǖ漠a(chǎn)生 2.1.2 面向?qū)ο蠓椒ǖ姆椒ㄅc結(jié)構(gòu) 2.1.3 類和對象的概念 2.1.4 消息與事件的概念 2.2 面向?qū)ο蟪绦蛟O(shè)計的特點 2.2.1 抽象性 2.2.2 封裝性 2.2.3 繼承性 2.2.4 多態(tài)性 2.3 面向?qū)ο蟮能浖_發(fā) 2.3.1 面向?qū)ο蠓治觥 ?.3.2 面向?qū)ο笤O(shè)計 2.3.3 面向?qū)ο髮崿F(xiàn) 2.3.4 面向?qū)ο鬁y試 2.3.5 面向?qū)ο筌浖S護 本章小結(jié) 思考與練習第3章 類與對象 3.1 類 3.1.1 類的定義 3.1.2 訪問控制 3.1.3 成員變量 3.1.4 成員函數(shù) 3.2 構(gòu)造函數(shù)與析構(gòu)函數(shù) 3.2.1 構(gòu)造函數(shù) 3.2.2 析構(gòu)函數(shù) 3.2.3 拷貝構(gòu)造函數(shù) 3.2.4 淺拷貝與深拷貝 3.2.5 構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用過程 3.3 對象 3.3.1 對象的定義 3.3.2 類成員的訪問 3.4 子對象 3.4.1 組合模式 3.4.2 子對象和構(gòu)造函數(shù)設(shè)計 3.4.3 內(nèi)部類 3.5 靜態(tài)成員 3.5.1 定義與引用 3.5.2 靜態(tài)數(shù)據(jù)成員 3.5.3 靜態(tài)成員函數(shù) 3.6 友元 3.6.1 友元的作用 3.6.2 友元函數(shù) 3.6.3 友元類 3.6.4 友元成員函數(shù) 3.7 設(shè)計舉例 本章小結(jié) 思考與練習第4章 繼承與派生第5章 多態(tài)性第6章 模板第7章 異常處理第8章 流類庫附錄A 基本ASCII字符集附錄B Visual C++下的程序調(diào)試參考文獻
章節(jié)摘錄
插圖:2.3.1 面向?qū)ο蠓治雒嫦驅(qū)ο蠓治鍪侵冈谏钊?、全面理解問題本質(zhì)需求的基礎(chǔ)上,確定類與對象、屬性,分析對象模式及類對象的關(guān)聯(lián)關(guān)系,確定行為等要素。為全面正確理解問題的實質(zhì)和要素,在面向?qū)ο蟪绦蜍浖_發(fā)的分析階段,系統(tǒng)分析員應與客戶一起工作。應從目標問題的分析和描述人手,建立一個符合系統(tǒng)內(nèi)在邏輯、能客觀反映系統(tǒng)重要特性的準確數(shù)學模型。在深入理解客戶需求分析的基礎(chǔ)上,面向?qū)ο蠓治鲆龅闹饕ぷ靼ù_定類、確定類的屬性和確定類的方法。另外,還要確定類之間的聯(lián)系方式,這稱為確定對象模式。實際上,在一個較大的軟件系統(tǒng)分析中,確定類和確定對象模式是結(jié)合起來完成的。1.確定類類是對象模型的基礎(chǔ),尋找并整理出對象模型中的全部類,是首先要做的工作。面向?qū)ο蟪绦蛟O(shè)計的重要步驟之一就是將如何將現(xiàn)實世界的對象關(guān)系映射到計算機的虛擬世界中去,對于現(xiàn)實世界來說,對象可分為以下幾種情況:(1)需求分析包括的可感知的實體和抽象的概念??筛兄膶嶓w如計算機、防盜門、出租車、茶杯、臺燈等,抽象的概念如學校校規(guī)、交通法規(guī)等。(2)需求分析包括的人或組織的角色,如司機、教師、學生、市長、工人、醫(yī)生、護士、病人等。(3)需求分析所涉及事件,如學生在食堂買飯、顧客在商場購物、汽車發(fā)生交通事故、飛機發(fā)生空難事故等。事件是指一個狀態(tài)的改變,或者一個活動的發(fā)生。事件可按需求分析得出的重要程度分為一般事件和重要事件。一般事件可在相關(guān)類中增加屬性并增加相應的方法。重要事件可設(shè)計為類,例如,飛機發(fā)生空難事故,這種需要長期保存資料的事件就要設(shè)計成單獨的類。
編輯推薦
《面向?qū)ο蟪绦蛟O(shè)計(C++描述)》是由清華大學出版社出版。教學目標明確,注重理論與實踐的結(jié)合教學方法靈活,培養(yǎng)學生自主學習的能力教學內(nèi)容先進,反映了計算機學科的最新發(fā)展教學模式完善,提供配套的教學資源解決方案
圖書封面
評論、評分、閱讀與下載