版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
¥
M
W
舔
本
關(guān)于本課程的學(xué)習(xí):
?教材和參考書
?課時計劃表與學(xué)時
?教學(xué)要求
?考查形式
參考書:
?秦軍等編著,《C++語言學(xué)習(xí)與實(shí)驗指導(dǎo)》,
河海大學(xué)出版社,2006年2月
?鄭莉編著,《C++語言程序設(shè)計》,清華大學(xué)出版社,
2002年7月
?錢能主編,《C++程序設(shè)計教程(第2版)》,
清華大學(xué)出版社,2005年9月
?徐春編著,面向?qū)ο蟪绦蛟O(shè)計習(xí)題與真題解析(本科),
中國水利水電出版社,2004年1月第一版。
課時計劃表總學(xué)時30+18
章節(jié)課時
第一章第二章面向?qū)ο蟪绦蛟O(shè)計技術(shù)1
第三章C++概述2
第四章類與對象6
第五章派生類與繼承類6
第六章多態(tài)性6
第七章模板3
第八章I/O流3
復(fù)習(xí)(機(jī)動)3
教學(xué)要求
?課前預(yù)習(xí)、課后復(fù)習(xí)
?大課、上機(jī)輔導(dǎo)課不得缺席
?作業(yè)按時完成
考查形式
?平時成績共占60%。
?期末閉卷考試占40%分。
?課程總成績?yōu)樯鲜龀煽冎?/p>
學(xué)習(xí)方法
?注重課堂學(xué)習(xí)
?勤于思考,多分析問題
?多上機(jī)實(shí)踐,熟能生巧
?充分利用網(wǎng)絡(luò)資源(校園網(wǎng)和互聯(lián)網(wǎng))
?多分析別人的程序,學(xué)習(xí)其編程的經(jīng)驗
?分析C++語言對C語言的改進(jìn)與增強(qiáng)
?獨(dú)立完成作業(yè)
1/1
我的聯(lián)系方法:
區(qū)email:yandx@mail.usts.edu.cn
Tel:62260800
本章主要內(nèi)容
?計算機(jī)程序設(shè)計語言的發(fā)展
?面向?qū)ο蟮姆椒?/p>
程序設(shè)計方法的發(fā)展歷程
——面向過程的結(jié)構(gòu)化程序設(shè)計方法
?設(shè)計思路:
?:?采用模塊分解與功能抽象,自頂向下、分而治之。
?程序結(jié)構(gòu):
?:?按功能劃分為若干個基本模塊,形成一個樹狀結(jié)構(gòu)。
?:?各模塊間的關(guān)系盡可能簡單,功能上相對獨(dú)立;每
一模塊內(nèi)部均由順序、選擇、循環(huán)三種基本結(jié)構(gòu)組成。
?:?其模塊化實(shí)現(xiàn)的具體方法是使用子程序。
程序設(shè)計方法的發(fā)展歷程
——面向過程的結(jié)構(gòu)化程序設(shè)計方法
?優(yōu)點(diǎn):
有效地將一個較復(fù)雜的程序系統(tǒng)設(shè)計任務(wù)分解
成許多易于控制和處理的子任務(wù),便于開發(fā)和維護(hù)。
?缺點(diǎn):
可重用性差、數(shù)據(jù)安全性差
。把數(shù)據(jù)和處理數(shù)據(jù)的過程分離為相互獨(dú)
立的實(shí)體,當(dāng)數(shù)據(jù)結(jié)構(gòu)改變時,所有相關(guān)
的處理過程都要進(jìn)行相應(yīng)的修改。
?:?每一種相對于老問題的新方法都要帶來
額外的開銷。
?:?難以開發(fā)圖形界面的應(yīng)用
。圖形用戶界面的應(yīng)用,很難用過程來描
述和實(shí)現(xiàn),開發(fā)和維護(hù)都很困難。
典型的結(jié)構(gòu)化程序設(shè)計語言
一C語言
?優(yōu)點(diǎn):
““高效、靈活并能夠?qū)Φ讓硬僮鳌?/p>
?缺點(diǎn):
不具有支持代碼重用的類的機(jī)制(致命缺點(diǎn))
?應(yīng)用場合:
適用于中小型的程序設(shè)計的編程。
二代碼長度在1萬行之下
程序設(shè)計方法的發(fā)展歷程
.用想.——面向?qū)ο蟮某绦蛟O(shè)計方法
將數(shù)據(jù)及對數(shù)據(jù)的操作方法封裝在一起,作為一個相
互依存、不可分離的整體一對象。
對同類型對象抽象出其共性,形成類。
類通過一個簡單的外部接口,與外界發(fā)生關(guān)系。
?:?對象與對象之間通過消息進(jìn)行通訊。
?優(yōu)點(diǎn):
。程序模塊間的關(guān)系更簡單,獨(dú)立性、數(shù)據(jù)的安全性有保障。
。通過繼承與多態(tài)性,可大大提高程序的可重用性,使得軟件
的開發(fā)和維護(hù)都更為方便。
面向?qū)ο笫冀寰虲t)」
一般意義上的對象:
?:?是現(xiàn)實(shí)世界中一個實(shí)際存在的事物。
?:?有形(一臺洗衣機(jī))、無形的(一項計劃)。
?:?是構(gòu)成世界的一個獨(dú)立單位,具有:
?靜態(tài)特征:對象的狀態(tài);
如:人的姓名、性別等;代應(yīng)
?動態(tài)特征:對象所表現(xiàn)的行為或具有的功能
如:人的吃飯、跑步等行
面向?qū)ο蟮幕靖庞?/p>
——時豪(Object)_2
?面向?qū)ο蠓椒ㄖ械膶ο螅?/p>
?:?是系統(tǒng)中用來描述客觀事物的一個實(shí)體,
它是用來構(gòu)成系統(tǒng)的一個基本單位。
?:?對象由一組屬性和一組行為構(gòu)成。
?屬性:用來描述對象靜態(tài)特征的數(shù)據(jù)項。
?行為:用來描述對象動態(tài)特征的操作序列。
面向?qū)ο蟮幕靖女?/p>
----簍(Class)」
?分類一人類通常的思維方法
____________________
?:?忽略事物非本質(zhì)特征,而從本質(zhì)特征中找出事物
的共性,把具有共性的事物劃分為一類,得出一
個抽象的概念。
?:?例如:石頭、樹木、汽車、房屋等都是人們在長
期生產(chǎn)和生活實(shí)踐中抽象出的概念。
面向?qū)ο蟮幕??ass)_2
?面向?qū)ο蠓椒ㄖ械摹邦悺保?/p>
?:?具有相同屬性和服務(wù)的一組對象的集合
。為屬于該類的全部對象提供了抽象的描述,
包括屬性和行為兩個主要部分。
。類與對象的關(guān)系:
?猶如模具與鑄件之間的關(guān)系(舉例P5,銀行帳戶)
?一個屬于某類的對象稱為該類的一個實(shí)例。
面向?qū)ο蟮幕靖拍?/p>
----封裝(Encapsulation)
?定義:
?把對象的屬性和服務(wù)結(jié)合成一個獨(dú)立的系統(tǒng)單位。
?描述:
隱蔽對象內(nèi)部細(xì)節(jié),對外形成一道屏障,只保
留有限的對外接口使之與外部發(fā)生聯(lián)系。
?舉例:
錄音機(jī)。
面向?qū)ο蟮幕靖拍?/p>
----封裝(Encapsulation)
對象是面向?qū)ο蟪绦蛟O(shè)計的基石,其特性:
(1)封裝性:
私有元素、操作細(xì)節(jié)隱藏,提供對外接口,消息激活
(2)模塊獨(dú)立性:
對象為獨(dú)立模塊,變化不受外界干擾,不影響其它模塊
(3)動態(tài)鏈接性:
對象通過消息傳遞機(jī)制將對象動態(tài)地聯(lián)系在一起
(4)易維護(hù)性
對象功能被隱蔽,修改完善工作局限于內(nèi)部,易維護(hù)
面向?qū)ο蟮幕靖拍?/p>
----繼承(Inheritance)
?定義:
特殊類的對象擁有其一般類的全部非私有屬性
與服務(wù),稱作特殊類對一般類的繼承。
?音W-
對軟件復(fù)用有著重要意義,能提高軟件開發(fā)效率
?舉例:(一般類和特殊類)。
1、P11哺乳動物、狗和柯利狗的關(guān)系
2、輪船和客輪的關(guān)系
面向?qū)ο蟮幕锯?
----多態(tài)性(Polymorphism)
?描述:1、同一名稱,不同的功能實(shí)現(xiàn)方式;
2、不同對象收到相同消息時產(chǎn)生不同的行為。
,目的:達(dá)到行為標(biāo)識統(tǒng)一,減少程序中標(biāo)識符的個數(shù)。
?實(shí)現(xiàn):編譯時多態(tài)一重載函數(shù)、運(yùn)行時多態(tài)一虛國數(shù)
?舉例P14:
1、“挪開”的解釋
2、對“移動”消息,“窗口”和“棋子”的不
同行為
典型的幾種OOP語言
?Simula67:
20世紀(jì)60年代開發(fā),鼻祖,主要用于仿真建模
?Smalltalk:
20世紀(jì)70年代開發(fā),最有影響的OOP語言之一
?Eiffel:
理論上最有商業(yè)潛力的最好的。OP語言
?C++:
對C進(jìn)行面向?qū)ο髷U(kuò)充,支持兩種范型
?Java:
SUN公司20世紀(jì)90年代開發(fā),廣泛用于網(wǎng)絡(luò)編程
典型的OOP語言
-----C++
?產(chǎn)生的時期:
1980年、貝爾實(shí)驗室BjarneStroutStrupG
?主要的特性:
支持面向過程和面向?qū)ο髢煞N程序設(shè)計方法
?應(yīng)用場合:
適應(yīng)大型復(fù)雜程序開發(fā)與維護(hù)
C++與C語言之比較
?本質(zhì)差別:
/編程方法方面:
OC++一面向?qū)ο?;C語言一面向過程。
/程序結(jié)構(gòu)方面:
+C++—“對象+消息”模式;C—“數(shù)據(jù)+算法”
模式。
?兼容性:
/保持C的簡潔、高效和接近匯編語言等特性。
/對源代碼的支持和對系統(tǒng)庫的支持。
?改良:
,改進(jìn)了C中一些易產(chǎn)生錯誤的語法(見后文)。
■擴(kuò)充:_______
C++語言
新
增
增
新抽象;封裝
多
許
許
多
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度森林資源保護(hù)合作造林協(xié)議3篇
- 2025年度生態(tài)小區(qū)車庫租賃與社區(qū)可持續(xù)發(fā)展合同3篇
- 二零二五年度新材料研發(fā)企業(yè)員工2025年度聘用協(xié)議2篇
- 二零二五年度公司單位員工勞動合同續(xù)簽與薪酬調(diào)整方案2篇
- 2025年度公寓租賃合同電子簽名及備案服務(wù)合同樣本3篇
- 2025年度溫室大棚租賃與生態(tài)旅游合作合同3篇
- 二零二五年度高新技術(shù)產(chǎn)業(yè)公司合并協(xié)議2篇
- 二零二五年度文化創(chuàng)意產(chǎn)業(yè)內(nèi)部股東股權(quán)轉(zhuǎn)讓合同范本2篇
- 二零二五年度商住兩用物業(yè)出售協(xié)議書
- 2025物品租賃合同格式范本
- CJJ 169-2012城鎮(zhèn)道路路面設(shè)計規(guī)范
- 現(xiàn)代機(jī)械工程圖學(xué) 課件 第10章-裝配圖
- 新概念英語第一冊1-72課測試題
- 天貓售后工作總結(jié)
- 國賽一等獎經(jīng)驗分享
- 2024年試驗箱行業(yè)未來三年發(fā)展洞察報告
- 江西省萍鄉(xiāng)市2023-2024學(xué)年高一上學(xué)期期末生物試題
- 《性格決定命運(yùn)》課件
- 音樂行業(yè)商業(yè)計劃書
- 電氣設(shè)備交接試驗
- 結(jié)節(jié)性癢疹護(hù)理查房課件
評論
0/150
提交評論