《程序設(shè)計(jì)語言緒論》PPT課件.ppt
《《程序設(shè)計(jì)語言緒論》PPT課件.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《《程序設(shè)計(jì)語言緒論》PPT課件.ppt(12頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第1章程序設(shè)計(jì)語言緒論,1.1程序設(shè)計(jì)語言的歷史1.2程序設(shè)計(jì)語言范型概述1.3面向?qū)ο蟮某绦蛟O(shè)計(jì),1.1程序設(shè)計(jì)語言的歷史,1.1.1程序設(shè)計(jì)語言低級(jí)語言:機(jī)器語言、匯編語言高級(jí)語言(有解釋和編譯兩種形式):面向過程、面向?qū)ο?.1.2如何學(xué)習(xí)和使用程序設(shè)計(jì)語言1)理解程序設(shè)計(jì)語言的語法和語義2)熟悉集成開發(fā)環(huán)境3)熟悉庫函數(shù)或類庫,1.1.3程序設(shè)計(jì)語言的發(fā)展過程,C++源于C語言,而C語言是在B語言的基礎(chǔ)上發(fā)展起來的。1960年出現(xiàn)了一種面向問題的高級(jí)語言ALGOL60。1963年英國(guó)劍橋大學(xué)推出了CPL(CombinedProgrammingLanguage)語言,后來經(jīng)簡(jiǎn)化為BCPL語言。1970年美國(guó)貝爾(Bell)實(shí)驗(yàn)室的K.Thompson以BCPL語言為基礎(chǔ),設(shè)計(jì)了一種類似于BCPL的語言,取其第一字母B,稱為B語言。,,1972年美國(guó)貝爾實(shí)驗(yàn)室的DennisM.Ritchie為克服B語言的諸多不足,在B語言的基礎(chǔ)上重新設(shè)計(jì)了一種語言,取其第二字母C,故稱為C語言。1980年貝爾實(shí)驗(yàn)室的BjarneStroustrup對(duì)C語言進(jìn)行了擴(kuò)充,推出了“帶類的C”,多次修改后起名為C++。以后又經(jīng)過不斷的改進(jìn),發(fā)展成為今天的C++。C++改進(jìn)了C的不足之處,支持面向?qū)ο蟮某绦蛟O(shè)計(jì),在改進(jìn)的同時(shí)保持了C的簡(jiǎn)潔性和高效性。,,1.1.4C++語言的主要特點(diǎn),1.C++語言在與C兼容方面的主要特點(diǎn)如下:1)對(duì)硬件系統(tǒng)的操作控制功能強(qiáng)2)語言簡(jiǎn)潔、結(jié)構(gòu)緊湊3)方便靈活高效4)可移植性好,2.C++語言在C的基礎(chǔ)上新增的主要特點(diǎn)如下:1)C++引入了數(shù)據(jù)抽象2)C++引入了面向?qū)ο髾C(jī)制3)C++是一門完整的語言,1.2程序設(shè)計(jì)語言范型概述,1.2.1過程式語言是命令型語言。它又可以進(jìn)一步分為簡(jiǎn)單過程型語言和塊結(jié)構(gòu)過程型語言兩類。如:FORTRAN和C是流行的簡(jiǎn)單過程型語言。Pascal是流行的塊結(jié)構(gòu)過程型語言。1.2.2功能型語言是一種表處理語言,如:Lisp等。主要被設(shè)計(jì)用于符號(hào)數(shù)據(jù)處理,因此是一種基于符號(hào)處理的程序設(shè)計(jì)語言,廣泛用于機(jī)器人、自然語言處理、公式證明、智能系統(tǒng)等人工智能領(lǐng)域和程序設(shè)計(jì)語言研究等領(lǐng)域。1.2.3面向?qū)ο笳Z言基于類和對(duì)象的程序設(shè)計(jì)語言。如:Ada、Smalltalk和C++。1.2.4腳本式語言以組件為基礎(chǔ)的無類型、簡(jiǎn)單高效的解釋型語言。如:JavaScript、VBScript等。,1.3面向?qū)ο蟮某绦蛟O(shè)計(jì),隨著軟件需要描述的系統(tǒng)日趨復(fù)雜,結(jié)構(gòu)化程序設(shè)計(jì)方法不再奏效,采用傳統(tǒng)的方法,用過程模塊構(gòu)成復(fù)雜軟件系統(tǒng)已經(jīng)不再合適,程序設(shè)計(jì)逐步趨向于以一種類型的所有數(shù)據(jù)為中心,在某個(gè)類型管理模塊的控制下工作。通過對(duì)實(shí)際系統(tǒng)的分析和抽象,將一類數(shù)據(jù)和與其相關(guān)的操作集成到一起,形成一種用戶自定義類型,也稱為抽象數(shù)據(jù)類型,或者類類型。抽象代表著一類對(duì)象的本質(zhì)特征,這個(gè)特征將這類對(duì)象與所有其它種類的對(duì)象區(qū)別開來,因而從相對(duì)于觀察者的角度來看,抽象提供了嚴(yán)格意義的概念邊界。從數(shù)據(jù)結(jié)構(gòu)的角度看,抽象數(shù)據(jù)類型是指一個(gè)數(shù)學(xué)模型以及定義在模型上的一組操作。這種抽象數(shù)據(jù)類型的語法地位與常見的int、char、float等類型說明符一樣,可以用以說明相應(yīng)的名字,只不過此時(shí)這個(gè)名字不是稱為變量,而是稱作對(duì)象。,1.3.1對(duì)象,對(duì)象(Object)是指一切可以被感知和觸摸的客觀實(shí)體。按程序設(shè)計(jì)的觀點(diǎn),對(duì)象則是變量概念的進(jìn)一步推廣和延伸。從一般意義上講,對(duì)象是現(xiàn)實(shí)世界中一個(gè)實(shí)際存在的事物,它可以是有形的(比如一輛汽車),也可以是無形的(比如一項(xiàng)計(jì)劃)。對(duì)象是構(gòu)成世界的一個(gè)獨(dú)立單位,它具有自己的靜態(tài)特征(狀態(tài))和動(dòng)態(tài)特征(操作)。靜態(tài)特征即可以用某種數(shù)據(jù)來描述的特征,動(dòng)態(tài)特征即對(duì)象所表現(xiàn)的行為或?qū)ο笏哂械墓δ?。?duì)象的狀態(tài)由對(duì)象的屬性描述,對(duì)象的狀態(tài)如何變化、對(duì)象之間如何相互作用、外界如何與對(duì)象進(jìn)行交互等則由對(duì)象的行為決定。面向?qū)ο笳Z言把狀態(tài)和操作封裝于對(duì)象體之中,并提供一種訪問機(jī)制,使對(duì)象的“私有數(shù)據(jù)”僅能由這個(gè)對(duì)象的操作來執(zhí)行。用戶只能通過允許公開的操作提出要求(消息),才能查詢和修改對(duì)象的狀態(tài)。,1.3.2面向?qū)ο蟮姆椒?用這種方法來認(rèn)識(shí)客觀世界有什么好處呢?(1)能夠把一種事物和另外一種事物相互區(qū)別。例如:不同品牌的汽車有不同的車身、不同的發(fā)動(dòng)機(jī)等。(2)對(duì)象的內(nèi)部結(jié)構(gòu)特征和外部使用功能區(qū)別開來。例如:使用者只關(guān)心如何用,即僅僅只需要關(guān)心對(duì)象的外部使用功能而忽略對(duì)象的內(nèi)部細(xì)節(jié);只有生產(chǎn)者才需要關(guān)心如何造,即需要關(guān)心對(duì)象的內(nèi)部結(jié)構(gòu)特征細(xì)節(jié)。(3)提供了部件重用的可能。例如:兩臺(tái)同樣品牌的汽車,一輛車輪壞了,另一臺(tái)發(fā)動(dòng)機(jī)壞了,此時(shí),前者的發(fā)動(dòng)機(jī)可以用于后者,或者后者的車輪可以用于前者。,1.3.3封裝(Encapsulation),封裝:是面向?qū)ο蠓椒ǖ囊粋€(gè)重要原則。它有兩個(gè)涵義:第一個(gè)涵義是,把對(duì)象的全部屬性和全部服務(wù)結(jié)合在一起,形成一個(gè)不可分割的獨(dú)立單位(即對(duì)象)。第二個(gè)涵義也稱作“信息隱蔽”,即盡可能隱蔽對(duì)象的內(nèi)部細(xì)節(jié),對(duì)外形成一個(gè)邊界(或者說形成一道屏障),只保留有限的對(duì)外接口使之與外部發(fā)生聯(lián)系。這主要是指對(duì)象的外部不能直接地存取對(duì)象地屬性,只能通過幾個(gè)允許外部使用地服務(wù)與對(duì)象發(fā)生聯(lián)系。,1.3.4繼承(Inheritance),繼承:是面向?qū)ο笳Z言的另一特性。類與類之間可以組成繼承層次,一個(gè)類的定義(子類)可以定義在另一個(gè)已定義類(父類)的基礎(chǔ)上。子類可以繼承父類中的屬性和操作,也可以定義自己的屬性和操作。C++語言支持單繼承和多繼承,因而具有繼承這一特性所帶來的優(yōu)勢(shì),大大增加了程序的重用性。,1.3.5多態(tài)性(Polymorphism),對(duì)象的多態(tài)性是指在一般類中定義的屬性或操作被特殊類繼承之后,可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為。這使得同一個(gè)屬性或操作名在一般類及其各個(gè)特殊類中具有不同的語義。,,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 程序設(shè)計(jì)語言緒論 程序設(shè)計(jì)語言 緒論 PPT 課件
鏈接地址:http://www.hcyjhs8.com/p-13156466.html