計算機(jī)等級考試公共基礎(chǔ)知識第二章_第1頁
計算機(jī)等級考試公共基礎(chǔ)知識第二章_第2頁
計算機(jī)等級考試公共基礎(chǔ)知識第二章_第3頁
計算機(jī)等級考試公共基礎(chǔ)知識第二章_第4頁
計算機(jī)等級考試公共基礎(chǔ)知識第二章_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

計算機(jī)等級考試公共基礎(chǔ)知識第二章第一頁,共27頁。第二章程序設(shè)計基礎(chǔ)大綱要求(l)程序設(shè)計方法與風(fēng)格。(2)結(jié)構(gòu)化程序設(shè)計。(3)面向?qū)ο蟮某绦蛟O(shè)計方法,對象,方法,屬性及繼承與多態(tài)性。第二頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.1程序設(shè)計方法與風(fēng)格2.1.1程序設(shè)計經(jīng)歷的階段程序設(shè)計是指設(shè)計、編制、調(diào)試程序的方法和過程程序設(shè)計主要經(jīng)歷了結(jié)構(gòu)化設(shè)計和面向?qū)ο蟮某绦蛟O(shè)計階段第三頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.1.2良好的編程風(fēng)格應(yīng)注意的因素要形成良好的程序設(shè)計風(fēng)格,主要應(yīng)注意和考慮下述一些因素。(I)源程序的文檔化源程序文檔化是指在源程序中可包含一些內(nèi)部文檔,以幫助閱讀和理解源程序。①符號名的命名規(guī)則:符號名的命名應(yīng)具有一定的實(shí)際含義,以便理解程序功能。②程序注釋:在源程序中添加正確的注釋可幫助人們理解程序。程序注釋可分為序言性注釋和功能性注釋,以給出程序的整體說明和程序的主要功能。③視覺組織:可以在程序中利用空格、空行、縮進(jìn)等技巧使程序?qū)哟吻逦?。第四頁,?7頁。第二章程序設(shè)計基礎(chǔ)(2)數(shù)據(jù)說明的方法為使程序中的數(shù)據(jù)說明易于理解和維護(hù),可采用下列數(shù)據(jù)說明的風(fēng)格,見表2-1。第五頁,共27頁。第二章程序設(shè)計基礎(chǔ)數(shù)據(jù)說明風(fēng)格詳細(xì)說明次序應(yīng)規(guī)范化使數(shù)據(jù)說明次序固定,使數(shù)據(jù)的屬性容易查找,也有利于測試、排錯和和維護(hù)變量安排有序化當(dāng)多個變量出現(xiàn)在同一個說明語句中時,變量名應(yīng)按字母順序排序,以便于查找使用注釋在定義一個復(fù)雜的數(shù)據(jù)結(jié)構(gòu)時,應(yīng)通過注釋來說明該數(shù)據(jù)結(jié)構(gòu)的特點(diǎn)。

表2-1數(shù)據(jù)說明風(fēng)格

第六頁,共27頁。第二章程序設(shè)計基礎(chǔ)(3)語句的結(jié)構(gòu)為使程序更簡單易懂,語句構(gòu)造應(yīng)該簡單直接,應(yīng)注意如下原則:①在一行內(nèi)只寫一條話句;②程序編寫應(yīng)優(yōu)先考慮清晰性;③程序編寫要做到清晰第一,效率第二;④在保證程序正確的基礎(chǔ)上再要求提高效率;⑤避免使用臨時變量而使程序的可讀性下降;⑥避免不必要的轉(zhuǎn)移;⑦盡量使用庫函數(shù);第七頁,共27頁。第二章程序設(shè)計基礎(chǔ)⑧避免采用復(fù)雜的條件語句;⑨盡量減少使用“否定”條件語句;⑩數(shù)據(jù)結(jié)構(gòu)要有利于程序的簡化;⑩要模塊化,使模塊功能盡可能單一化;⑥利用信息隱蔽,確保每一個模塊的獨(dú)立性;⑩從數(shù)據(jù)出發(fā)去構(gòu)造程序;⑩不要修補(bǔ)不好的程序,要重新編寫。第八頁,共27頁。第二章程序設(shè)計基礎(chǔ)(4)輸入/輸出輸入/輸出方式和風(fēng)格應(yīng)盡可能方便用戶的使用,應(yīng)考慮如下原則:1對所有輸入的數(shù)據(jù)都要檢驗(yàn)數(shù)據(jù)的合法性;2檢查輸入項的各種重要組合的合理性;3輸入格式要簡單,使得輸入的步驟和操作盡可能簡單;4入數(shù)據(jù)時,應(yīng)允許使用自由格式;⑤應(yīng)允許默認(rèn)值;⑥輸入一批數(shù)據(jù)時,最好使用輸入結(jié)束標(biāo)志;⑦在以交互式輸入/輸出方式進(jìn)行輸入時,要在屏幕上使用提示符明確提示輸入的請求,同時在數(shù)據(jù)輸入過程中和輸入結(jié)束時,應(yīng)在屏幕上給出狀態(tài)信息;⑧當(dāng)程序設(shè)計語言對輸人格式有嚴(yán)格要求時,應(yīng)保持輸入格式與輸入語句的一致性。第九頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.2結(jié)構(gòu)化程序設(shè)計2.2.1結(jié)構(gòu)化程序設(shè)計的原則結(jié)構(gòu)化程序設(shè)計方法的重要原則是自頂向下、逐步求精、模塊化及限制使用goto語句。(1)自頂向下,程序設(shè)計時,先考慮總體,后考慮細(xì)節(jié);先考慮全局目標(biāo),后考慮局部目標(biāo)。(2)逐步求精對復(fù)雜問題,應(yīng)設(shè)計一些子目標(biāo)做過渡,逐步細(xì)化。(3)模塊化模塊化是把程序要解決的總目標(biāo)分解為分目標(biāo),再進(jìn)一步分解為具體的小目標(biāo),把每個小國標(biāo)稱為一個模塊。(4)限制使用goto語句第十頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.2.2結(jié)構(gòu)化程序的基本結(jié)構(gòu)與特點(diǎn)程序設(shè)計語言使用順序結(jié)構(gòu)、選擇(分支)結(jié)構(gòu)和重復(fù)(循環(huán))結(jié)構(gòu)三種基本控制結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計方法。它們的共同特征是:嚴(yán)格地只有一個人口和一個出口。第十一頁,共27頁。第二章程序設(shè)計基礎(chǔ)遵循結(jié)構(gòu)化程序設(shè)計原則,按結(jié)構(gòu)化程序設(shè)計方法設(shè)計出的程序具有明顯的優(yōu)點(diǎn):程序易于理解、使用和維護(hù);提高了編程工作的效率,降低了軟件開發(fā)成本。第十二頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.2.3結(jié)構(gòu)化程序設(shè)計原則和方法的應(yīng)用基于對結(jié)構(gòu)化程序設(shè)計原則、方法以及結(jié)構(gòu)化程序基本構(gòu)成結(jié)構(gòu)的掌握和了解,在結(jié)構(gòu)化程序設(shè)計的具體實(shí)施中,要注意把握如下要素:

①使用程序設(shè)計語言中的順序、選擇、循環(huán)等有限的控制結(jié)構(gòu)表示程序的控制邏輯;

②選用的控制結(jié)構(gòu)只準(zhǔn)許有一個入口和一個出口;

③程序語句組成容易識別的塊,每塊只有一個人口和一個出口;

④復(fù)雜結(jié)構(gòu)應(yīng)該用嵌套的基本控制結(jié)構(gòu)進(jìn)行組合嵌套來實(shí)現(xiàn);

⑤語言中所沒有的控制結(jié)構(gòu),應(yīng)該采用前后一致的方法來模擬;

⑥盡量避免goto語句的使用。第十三頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.3面向?qū)ο蟮某绦蛟O(shè)計2.3.1面向?qū)ο蟮姆椒嫦驅(qū)ο蠓椒ǖ谋举|(zhì)就是主張從客觀世界固有的事物出發(fā)來構(gòu)造系統(tǒng),提倡用人類在現(xiàn)實(shí)生活中常用的思維方法來認(rèn)識、理解和描述客觀事物,強(qiáng)調(diào)最終建立的系統(tǒng)能夠映射問題域,也就是說,系統(tǒng)中的對象以及對象之間的關(guān)系能夠如實(shí)地反映問題域中固有事物及其關(guān)系。第十四頁,共27頁。第二章程序設(shè)計基礎(chǔ)一個對象應(yīng)該包括兩個要素:一是數(shù)據(jù);二是需要進(jìn)行的操作。對象就是一個包含數(shù)據(jù)以及與這些數(shù)據(jù)有關(guān)的操作的集合。面向?qū)ο缶褪沁\(yùn)用對象、類、繼承、封裝、消息、結(jié)構(gòu)與連接等面向?qū)ο蟮母拍顚栴}進(jìn)行分析、求解的系統(tǒng)開發(fā)技術(shù)。第十五頁,共27頁。第二章程序設(shè)計基礎(chǔ)面向?qū)ο蟮闹饕獌?yōu)點(diǎn):

①與人類習(xí)慣的思維方法一致;

②穩(wěn)定性好;

③可重用性好;

④易于開發(fā)大型軟件產(chǎn)品;

⑤可維護(hù)性好。第十六頁,共27頁。第二章程序設(shè)計基礎(chǔ)1.對象對象可以用來表示客觀世界中的任何實(shí)體,也就是說,應(yīng)用領(lǐng)域中有意義的、與所要解決的問題有關(guān)系的任何事物都可以作為對象。總之,對象是對問題域中某個實(shí)體的抽象。面向?qū)ο蟮某绦蛟O(shè)計方法中涉及的對象是系統(tǒng)中用來描述客觀事物的一個實(shí)體,是構(gòu)成系統(tǒng)的一個基本單位,它由一組表示其靜態(tài)特征的屬性和它可執(zhí)行的一組操作組成??陀^世界中的實(shí)體通常既具有靜態(tài)的屬性,又具有動態(tài)的行為,因此,面向?qū)ο蠓椒▽W(xué)中的對象是由描述該對象屬性的數(shù)據(jù)以及可以對這些數(shù)據(jù)施加的操作封裝在一起構(gòu)成的統(tǒng)一體。對象可以執(zhí)行的操作表示它的動態(tài)行為。

屬性即對象所包含的信息,它在設(shè)計對象時確定,一般只能通過執(zhí)行對象的操作來改變。第十七頁,共27頁。第二章程序設(shè)計基礎(chǔ)操作描述了對象執(zhí)行的功能,若通過信息的傳遞,還可以為其他對象使用。對象具有如下特點(diǎn)。①標(biāo)識唯一性:指對象是可區(qū)分的,并且由對象的內(nèi)在本質(zhì)來區(qū)分,而不是通過描述來區(qū)分;②分類性:指可以將具有相同屬性和操作的財象抽象成類;③多態(tài)性:指同一個操作可以是不同對象的行為;④封裝性:從外面看只能看到對象的外部特征,而不知道也無須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實(shí)現(xiàn)操作的算法;⑤模塊獨(dú)立性好:對象是面向?qū)ο蟮能浖幕灸K,對象內(nèi)部各種元素彼此結(jié)合得很緊密,內(nèi)聚性強(qiáng)。第十八頁,共27頁。第二章程序設(shè)計基礎(chǔ)2.類和實(shí)例類是具有共同屬性、共同方法的對象的集合,是關(guān)于對象的抽象描述,反映屬于該對象類型的所有對象的性質(zhì)。一個具體對象則是其對應(yīng)類的一個實(shí)例。

要注意的是:“實(shí)例”這個術(shù)語,必然是指一個具體的對象?!皩ο蟆边@個術(shù)語,則既可以指一個具體的對象,也可以泛指一般的對象。因此,在使用“實(shí)例”這個術(shù)語的地方,都可以用“對象”來代替,而使用“對象”這個術(shù)語的地方,則不一定能用“實(shí)例”來代替。類是關(guān)于對象性質(zhì)的描述,它同對象一樣,包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作。第十九頁,共27頁。第二章程序設(shè)計基礎(chǔ)3.消息消息傳遞是對象間通信的手段,一個對象通過向另一對象發(fā)送消息來請求其服務(wù)。消息機(jī)制統(tǒng)一了數(shù)據(jù)流和控制流。消息的使用類似于函數(shù)調(diào)用。一個消息由下述3部分組成:(1)接收消息的對象名稱;

(2)消息選擇符(也稱為消息名);(3)零個或多個參數(shù)。第二十頁,共27頁。第二章程序設(shè)計基礎(chǔ)消息只告訴接收對象需要完成什么操作,但并不指示怎樣完成操作。消息完全由接收者解釋,獨(dú)立決定采用什么方法來完成所需的操作。一個對象能夠接收不同形式、不同內(nèi)容的多個消息;相同形式的消息可以送往不同的對象,不同的對象對于形式相同的消息可以有不同的解釋,能夠做出不同的反應(yīng)。一個對象可以同時往多個對象傳遞消息,兩個對象也可以同時向某一個對象傳遞消息。第二十一頁,共27頁。第二章程序設(shè)計基礎(chǔ)4.繼承繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們。繼承具有傳遞性。一個類實(shí)際上繼承了它上層的全部基類的特性,也就是說,屬于某類的對象除了具有該類定義的特性外,還具有該類上層全部基類定義的特性。第二十二頁,共27頁。第二章程序設(shè)計基礎(chǔ)繼承分為單繼承與多重繼承。單繼承是指一個類只允許有一個父類,即類等價為樹形結(jié)構(gòu)。多重繼承是指一個類允許有多個父類。多重繼承的類可以組合多個父類的性質(zhì)構(gòu)成所需要的性質(zhì)。

繼承的優(yōu)點(diǎn)是:相似的對象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減少了程序中的冗余信息,提高軟件的可重用性,便于軟件修改維護(hù)。另外,繼承使得用戶在開發(fā)新的應(yīng)用系統(tǒng)時不必完全從零開始,可以繼承原有的相似系統(tǒng)的功能或者從類庫中選取需要的類,再派生出新的類以實(shí)現(xiàn)所需的功能。第二十三頁,共27頁。第二章程序設(shè)計基礎(chǔ)繼承是面向?qū)ο蠓椒ǖ囊粋€重要特征。廣義地說,繼承是指能夠直接獲得已有的性質(zhì)和特征,不必重復(fù)定義它們。在面向?qū)ο蟮能浖夹g(shù)中,繼承是指子類自動地共享基類中定義的數(shù)據(jù)和方法的機(jī)制。第二十四頁,共27頁。第二章程序設(shè)計基礎(chǔ)5.多態(tài)性對象根據(jù)所接收的消息而做出動作,同樣的消息被不同的對象接收時可導(dǎo)致完全不同的行為,該現(xiàn)象稱為多態(tài)

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論