




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、計算機等級考試公共基礎知識第二章 程序設計基礎大綱要求(l)程序設計方法與風格。(2)結(jié)構(gòu)化程序設計。(3)面向?qū)ο蟮某绦蛟O計方法,對象,方法,屬性及繼承與多態(tài)性。第二章 程序設計基礎程序設計方法與風格2.1.1 程序設計經(jīng)歷的階段程序設計是指設計、編制、調(diào)試程序的方法和過程程序設計主要經(jīng)歷了結(jié)構(gòu)化設計和面向?qū)ο蟮某绦蛟O計階段第二章 程序設計基礎良好的編程風格應注意的因素要形成良好的程序設計風格,主要應注意和考慮下述一些因素。(I)源程序的文檔化 源程序文檔化是指在源程序中可包含一些內(nèi)部文檔,以幫助閱讀和理解源程序。符號名的命名規(guī)則:符號名的命名應具有一定的實際含義,以便理解程序功能。程序注釋
2、:在源程序中添加正確的注釋可幫助人們理解程序。程序注釋可分為序言性注釋和功能性注釋,以給出程序的整體說明和程序的主要功能。視覺組織:可以在程序中利用空格、空行、縮進等技巧使程序?qū)哟吻逦?。第二?程序設計基礎(2)數(shù)據(jù)說明的方法為使程序中的數(shù)據(jù)說明易于理解和維護,可采用下列數(shù)據(jù)說明的風格,見表2-1。第二章 程序設計基礎數(shù)據(jù)說明風格詳細說明次序應規(guī)范化使數(shù)據(jù)說明次序固定,使數(shù)據(jù)的屬性容易查找,也有利于測試、排錯和和維護變量安排有序化當多個變量出現(xiàn)在同一個說明語句中時,變量名應按字母順序排序,以便于查找使用注釋在定義一個復雜的數(shù)據(jù)結(jié)構(gòu)時,應通過注釋來說明該數(shù)據(jù)結(jié)構(gòu)的特點。 表2 -1數(shù)據(jù)說明風格
3、第二章 程序設計基礎(3)語句的結(jié)構(gòu)為使程序更簡單易懂,語句構(gòu)造應該簡單直接,應注意如下原則:在一行內(nèi)只寫一條話句;程序編寫應優(yōu)先考慮清晰性;程序編寫要做到清晰第一,效率第二;在保證程序正確的基礎上再要求提高效率;避免使用臨時變量而使程序的可讀性下降;避免不必要的轉(zhuǎn)移;盡量使用庫函數(shù);第二章 程序設計基礎避免采用復雜的條件語句;盡量減少使用“否定”條件語句;數(shù)據(jù)結(jié)構(gòu)要有利于程序的簡化;要模塊化,使模塊功能盡可能單一化;利用信息隱蔽,確保每一個模塊的獨立性;從數(shù)據(jù)出發(fā)去構(gòu)造程序;不要修補不好的程序,要重新編寫。第二章 程序設計基礎(4)輸入輸出輸入輸出方式和風格應盡可能方便用戶的使用,應考慮如下
4、原則:1對所有輸入的數(shù)據(jù)都要檢驗數(shù)據(jù)的合法性;2檢查輸入項的各種重要組合的合理性;3輸入格式要簡單,使得輸入的步驟和操作盡可能簡單;4入數(shù)據(jù)時,應允許使用自由格式;應允許默認值; 輸入一批數(shù)據(jù)時,最好使用輸入結(jié)束標志; 在以交互式輸入輸出方式進行輸入時,要在屏幕上使用提示符明確提示輸入的請求,同時在數(shù)據(jù)輸入過程中和輸入結(jié)束時,應在屏幕上給出狀態(tài)信息; 當程序設計語言對輸人格式有嚴格要求時,應保持輸入格式與輸入語句的一致性。第二章 程序設計基礎結(jié)構(gòu)化程序設計結(jié)構(gòu)化程序設計的原則結(jié)構(gòu)化程序設計方法的重要原則是自頂向下、逐步求精、模塊化及限制使用goto語句。 (1)自頂向下, 程序設計時,先考慮總
5、體,后考慮細節(jié);先考慮全局目標,后考慮局部目標。 (2)逐步求精 對復雜問題,應設計一些子目標做過渡,逐步細化。 (3)模塊化 模塊化是把程序要解決的總目標分解為分目標,再進一步分解為具體的小目標,把每個小國標稱為一個模塊。 (4)限制使用goto語句第二章 程序設計基礎結(jié)構(gòu)化程序的基本結(jié)構(gòu)與特點程序設計語言使用順序結(jié)構(gòu)、選擇(分支)結(jié)構(gòu)和重復(循環(huán))結(jié)構(gòu)三種基本控制結(jié)構(gòu)就足以表達出各種其他形式結(jié)構(gòu)的程序設計方法。它們的共同特征是:嚴格地只有一個人口和一個出口。第二章 程序設計基礎遵循結(jié)構(gòu)化程序設計原則,按結(jié)構(gòu)化程序設計方法設計出的程序具有明顯的優(yōu)點:程序易于理解、使用和維護;提高了編程工作的
6、效率,降低了軟件開發(fā)成本。第二章 程序設計基礎結(jié)構(gòu)化程序設計原則和方法的應用基于對結(jié)構(gòu)化程序設計原則、方法以及結(jié)構(gòu)化程序基本構(gòu)成結(jié)構(gòu)的掌握和了解,在結(jié)構(gòu)化程序設計的具體實施中,要注意把握如下要素: 使用程序設計語言中的順序、選擇、循環(huán)等有限的控制結(jié)構(gòu)表示程序的控制邏輯; 選用的控制結(jié)構(gòu)只準許有一個入口和一個出口; 程序語句組成容易識別的塊,每塊只有一個人口和一個出口; 復雜結(jié)構(gòu)應該用嵌套的基本控制結(jié)構(gòu)進行組合嵌套來實現(xiàn); 語言中所沒有的控制結(jié)構(gòu),應該采用前后一致的方法來模擬; 盡量避免goto語句的使用。第二章 程序設計基礎面向?qū)ο蟮某绦蛟O計面向?qū)ο蟮姆椒嫦驅(qū)ο蠓椒ǖ谋举|(zhì)就是主張從客觀世界固
7、有的事物出發(fā)來構(gòu)造系統(tǒng),提倡用人類在現(xiàn)實生活中常用的思維方法來認識、理解和描述客觀事物,強調(diào)最終建立的系統(tǒng)能夠映射問題域,也就是說,系統(tǒng)中的對象以及對象之間的關系能夠如實地反映問題域中固有事物及其關系。第二章 程序設計基礎一個對象應該包括兩個要素:一是數(shù)據(jù);二是需要進行的操作。對象就是一個包含數(shù)據(jù)以及與這些數(shù)據(jù)有關的操作的集合。面向?qū)ο缶褪沁\用對象、類、繼承、封裝、消息、結(jié)構(gòu)與連接等面向?qū)ο蟮母拍顚栴}進行分析、求解的系統(tǒng)開發(fā)技術。第二章 程序設計基礎面向?qū)ο蟮闹饕獌?yōu)點: 與人類習慣的思維方法一致; 穩(wěn)定性好; 可重用性好; 易于開發(fā)大型軟件產(chǎn)品; 可維護性好。第二章 程序設計基礎1.對象對象
8、可以用來表示客觀世界中的任何實體,也就是說,應用領域中有意義的、與所要解決的問題有關系的任何事物都可以作為對象??傊?,對象是對問題域中某個實體的抽象。面向?qū)ο蟮某绦蛟O計方法中涉及的對象是系統(tǒng)中用來描述客觀事物的一個實體,是構(gòu)成系統(tǒng)的一個基本單位,它由一組表示其靜態(tài)特征的屬性和它可執(zhí)行的一組操作組成??陀^世界中的實體通常既具有靜態(tài)的屬性,又具有動態(tài)的行為,因此,面向?qū)ο蠓椒▽W中的對象是由描述該對象屬性的數(shù)據(jù)以及可以對這些數(shù)據(jù)施加的操作封裝在一起構(gòu)成的統(tǒng)一體。對象可以執(zhí)行的操作表示它的動態(tài)行為。 屬性即對象所包含的信息,它在設計對象時確定,一般只能通過執(zhí)行對象的操作來改變。第二章 程序設計基礎操作
9、描述了對象執(zhí)行的功能,若通過信息的傳遞,還可以為其他對象使用。對象具有如下特點。標識唯一性:指對象是可區(qū)分的,并且由對象的內(nèi)在本質(zhì)來區(qū)分,而不是通過描述來區(qū)分;分類性:指可以將具有相同屬性和操作的財象抽象成類;多態(tài)性:指同一個操作可以是不同對象的行為;封裝性:從外面看只能看到對象的外部特征,而不知道也無須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實現(xiàn)操作的算法;模塊獨立性好:對象是面向?qū)ο蟮能浖幕灸K,對象內(nèi)部各種元素彼此結(jié)合得很緊密,內(nèi)聚性強。第二章 程序設計基礎2.類和實例類是具有共同屬性、共同方法的對象的集合,是關于對象的抽象描述,反映屬于該對象類型的所有對象的性質(zhì)。一個具體對象則是其對應類的一個實例。
10、 要注意的是:“實例”這個術語,必然是指一個具體的對象?!皩ο蟆边@個術語,則既可以指一個具體的對象,也可以泛指一般的對象。因此,在使用“實例”這個術語的地方,都可以用“對象”來代替,而使用“對象”這個術語的地方,則不一定能用“實例”來代替。類是關于對象性質(zhì)的描述,它同對象一樣,包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作。第二章 程序設計基礎3.消息消息傳遞是對象間通信的手段,一個對象通過向另一對象發(fā)送消息來請求其服務。消息機制統(tǒng)一了數(shù)據(jù)流和控制流。消息的使用類似于函數(shù)調(diào)用。一個消息由下述3部分組成:(1)接收消息的對象名稱; (2)消息選擇符(也稱為消息名);(3)零個或多個參數(shù)。第二章 程序設
11、計基礎消息只告訴接收對象需要完成什么操作,但并不指示怎樣完成操作。消息完全由接收者解釋,獨立決定采用什么方法來完成所需的操作。一個對象能夠接收不同形式、不同內(nèi)容的多個消息;相同形式的消息可以送往不同的對象,不同的對象對于形式相同的消息可以有不同的解釋,能夠做出不同的反應。一個對象可以同時往多個對象傳遞消息,兩個對象也可以同時向某一個對象傳遞消息。第二章 程序設計基礎4.繼承繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復定義它們。 繼承具有傳遞性。一個類實際上繼承了它上層的全部基類的特性,也就是說,屬于某類的對象除了具有該類定義的特性外,還具有該類上層全部基類定義的特性。第二章 程序設計基礎繼
12、承分為單繼承與多重繼承。單繼承是指一個類只允許有一個父類,即類等價為樹形結(jié)構(gòu)。多重繼承是指一個類允許有多個父類。多重繼承的類可以組合多個父類的性質(zhì)構(gòu)成所需要的性質(zhì)。 繼承的優(yōu)點是:相似的對象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減少了程序中的冗余信息,提高軟件的可重用性,便于軟件修改維護。另外,繼承使得用戶在開發(fā)新的應用系統(tǒng)時不必完全從零開始,可以繼承原有的相似系統(tǒng)的功能或者從類庫中選取需要的類,再派生出新的類以實現(xiàn)所需的功能。第二章 程序設計基礎繼承是面向?qū)ο蠓椒ǖ囊粋€重要特征。廣義地說,繼承是指能夠直接獲得已有的性質(zhì)和特征,不必重復定義它們。在面向?qū)ο蟮能浖夹g中,繼承是指子類自動地共享基類中定義的數(shù)據(jù)和方法的機制。第二章 程序設計基礎5.多態(tài)性對象根據(jù)所接收的消息而做出動作,同樣的消息被不同的對象接收時可導致完全
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年專利考試中如何有效時間管理試題及答案
- 公司離職面試題及答案
- 2024年激光工程師試題匯編試題及答案
- 注冊排水工程培訓
- 外勤輔助面試題及答案
- 中國憲法考試試題及答案
- 初級會計師考試快速提升策略試題及答案
- 專利代理人考試知識點提煉試題及答案
- 文化產(chǎn)業(yè)管理考試需要積極參與的現(xiàn)代項目分析試題及答案
- 光電工程師證書考試系統(tǒng)試題及答案
- 2025年03月人力資源社會保障部所屬單位筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 配電室消防知識培訓課件
- 自來水有限公司應急預案
- 汽車維修工(初級)技能理論考試核心題庫(職??荚?00題)
- 2024年版《輸變電工程標準工藝應用圖冊》
- 《軍事理論與軍事技能》全套教學課件
- 關羽單刀赴會
- 醫(yī)院處方箋模板
- 公司部門職能介紹
- 高一物理圓周運動計算題
- 重慶國際博覽中心施工組織設計
評論
0/150
提交評論