《計算機等級考試二級公共知識》由會員分享,可在線閱讀,更多相關(guān)《計算機等級考試二級公共知識(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、,單擊此處編輯母版標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,2003.11,.,全國計算機等級考試,二級公共基礎(chǔ)知識,(3),青海大學(xué)醫(yī)學(xué)院現(xiàn)代教育技術(shù)中心,2004.2,3.程序設(shè)計基礎(chǔ),3.0 內(nèi)容,程序設(shè)計方法與風(fēng)格,結(jié)構(gòu)化程序設(shè)計,面向?qū)ο蟮某绦蛟O(shè)計方法,對象、方法、屬性及繼承與多態(tài)性。,3.1 程序設(shè)計方法與風(fēng)格,3.1.1 程序設(shè)計方法,結(jié)構(gòu)化設(shè)計方法,模塊內(nèi)部程序各部分要按照自頂向下的結(jié)構(gòu)劃分,各程序部分應(yīng)按功能組合,各程序之間的聯(lián)系盡量通過調(diào)用子程序來實現(xiàn),不用或少用GOTO方式,快速原型方法,利用現(xiàn)有的工具和原型方法快速地開發(fā)所要的程序,面向
2、對象程序設(shè)計方法,3.1.2 程序設(shè)計風(fēng)格,1.源程序中的內(nèi)部文檔,選擇標示符的名字,注釋(序言性和功能性注釋),程序的視覺組織,2.數(shù)據(jù)說明,顯式地說明一切變量,數(shù)據(jù)說明的次序應(yīng)該規(guī)范化,便于查找變量(按順序排列),對復(fù)雜數(shù)據(jù)結(jié)構(gòu)應(yīng)注釋說明,3.語句的結(jié)構(gòu),每條語句簡單明了,盡量不用或少用GOTO語句,盡量只采用3種基本控制結(jié)構(gòu)編程,4.輸入和輸出,對所有輸入數(shù)據(jù)進行校驗和合理性檢查,輸入輸出格式保持一致,設(shè)計良好的輸出報表,3.1.3 程序設(shè)計語言,基本概念,低級語言和高級語言,編譯程序和解釋程序,程序設(shè)計語言的定義,種類和特點,程序語言的發(fā)展,程序設(shè)計范型,命令式、面向?qū)ο?、函?shù)式、邏輯
3、型,基本成分,數(shù)據(jù)成分,運算成分,控制成分,傳輸成分,3.2 結(jié)構(gòu)化程序設(shè)計,3.2.1 基本概念,基本思想,對大型的程序設(shè)計,使用一些基本的結(jié)構(gòu)來設(shè)計程序,無論多復(fù)雜的程序,都可以使用這些基本結(jié)構(gòu)按一定的順序組合起來。這些基本結(jié)構(gòu)的特點都是只有一個入口、一個出口。由這些基本結(jié)構(gòu)組成的程序就避免了任意轉(zhuǎn)移、閱讀起來需要來回尋找的問題。,三種基本結(jié)構(gòu),順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu),三種基本結(jié)構(gòu)的特點,只有一個入口,只有一個出口,每一個基本結(jié)構(gòu)中的每一部分都有機會執(zhí)行到,結(jié)構(gòu)內(nèi)不存在“死循環(huán)”,3.2.2 設(shè)計原則,自頂向下,逐步求精,模塊化,限制使用goto語句,結(jié)構(gòu)化程序設(shè)計方法,要求把程序的
4、結(jié)構(gòu)規(guī)定為順序、選擇和循環(huán)三種基本機構(gòu),并提出了自頂向下、逐步求精、模塊化程序設(shè)計等原則。,結(jié)構(gòu)化程序設(shè)計是把模塊分割方法作為對大型系統(tǒng)進行分析的手段,使其最終轉(zhuǎn)化為三種基本結(jié)構(gòu),其目的是為了解決由許多人共同開發(fā)大型軟件時,如何高效率地完成可靠系統(tǒng)的問題。,程序的可讀性好、可維護性好成為評價程序質(zhì)量的首要條件。,缺點:程序和數(shù)據(jù)結(jié)構(gòu)松散地耦合在一起。解決此問題的方法就是采用面向?qū)ο蟮某绦蛟O(shè)計方法(OOP)。,3.3 面向?qū)ο蟮某绦蛟O(shè)計方法,3.3.1 關(guān)于面向?qū)ο蠓椒?對系統(tǒng)的復(fù)雜性進行概括、抽象和分類,使軟件的設(shè)計與現(xiàn)實形成一個由抽象到具體、由簡單到復(fù)雜這樣一個循序漸進的過程,從而解決大型軟
5、件研制中存在的效率低、質(zhì)量難以保證、調(diào)試復(fù)雜、維護困難等問題。,結(jié)構(gòu)化的分解突出過程,即如何做(How to do)?它強調(diào)代碼的功能是如何實現(xiàn)的;面向?qū)ο蟮姆纸馔怀霈F(xiàn)實世界和抽象的對象,即做什么(What to do)?,主要優(yōu)點,與人類習(xí)慣的思維方法一致,穩(wěn)定性好,可重用性好,易于開發(fā)大型軟件產(chǎn)品,可維護性好,3.3.2 基本概念,對象(Object),對象是基本的運行時認得實體,它既包括數(shù)據(jù)(屬性),也包括作用于數(shù)據(jù)的操作(行為)。,一個對象把屬性和行為封裝為一個整體,一個對象通常可由對象名、屬性和操作3部分組成,面向?qū)ο?Object Oriented,OO),從該問題所涉及的對象入手
6、來研究問題。,消息(Message),對象之間進行通信的一種構(gòu)造,類(Class),一個類定義了一組大體上相似的對象。,一個類所包含的方法和數(shù)據(jù)描述一組對象的共同行為和屬性。,類是在對象之上的抽象,對象是類的具體化,是類的實例,封裝(Encapsulation),將數(shù)據(jù)和操作數(shù)據(jù)的函數(shù)銜接在一起,構(gòu)成一個具有類類型的對象的描述。,對象的內(nèi)部實現(xiàn)受保護,外界不能訪問,封裝簡化了程序員對對象的使用,繼承(Inheritance),繼承是父類和子類之間共享數(shù)據(jù)的方法的機制,一個子類可以繼承它的父類(或祖先類)中的屬性和操作,子類中可以定義自己的屬性和操作,單重繼承、多重繼承,多態(tài)性(Polymorp
7、hism),不同的對象收到同一消息可以產(chǎn)生完全不同的結(jié)構(gòu),這一現(xiàn)象叫做多態(tài)性,多態(tài)的實現(xiàn)受到繼承的支持,例題講解,結(jié)構(gòu)化程序設(shè)計的3種結(jié)構(gòu)是,A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu) B)分支結(jié)構(gòu)、等價結(jié)構(gòu)、循環(huán)結(jié)構(gòu),C)多分支結(jié)構(gòu)、賦值結(jié)構(gòu)、等價結(jié)構(gòu) D)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu),在設(shè)計程序時,應(yīng)采納的原則之一是,A)不限制goto語句的使用 B)減少或取消注解行,C)程序越短越好D)程序結(jié)構(gòu)應(yīng)有助于讀者理解,程序設(shè)計語言的基本成分是數(shù)據(jù)成分、運算成分、控制成分和,A)對象成分B)變量成分,C)語句成分D)傳輸成分,結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是,A)程序的規(guī)模B)程序的效率,C)程序設(shè)計語言的先進
8、性 D)程序易讀性,以下不屬于對象的基本特點的是,A)分類性 B)多態(tài)性 C)繼承性D)封裝性,對建立良好的程序設(shè)計風(fēng)格,下面描述正確的是,A)程序應(yīng)簡單、清晰、可讀性好 B)符號名的命名只要符合語法,C)充分考慮程序的執(zhí)行效率 D)程序的注釋可有可無,在結(jié)構(gòu)化程序設(shè)計思想提出之前,在程序設(shè)計中曾強調(diào)程序的效率,現(xiàn)在,與程序的效率相比,人們更重視程序的,A)安全性B)一致性 C)可理解性D)合理性,程序的3種基本控制結(jié)構(gòu)是,A)過程、子過程和分程序B)順序、選擇和重復(fù),C)遞歸、堆棧和隊列 D)調(diào)用、返回和轉(zhuǎn)移,下列敘述中,不屬于結(jié)構(gòu)化程序設(shè)計方法的主要原則的是,A)自頂向下 B)由底向上,C
9、)模塊化D)限制使用goto語句,對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,是指對數(shù)據(jù)和數(shù)據(jù)的操作進行,A)結(jié)合 B)隱藏 C)封裝 D)抽象,在面向?qū)ο蠓椒ㄖ校粋€對象請求另一個對象為其服務(wù)的方式是通過發(fā)送,A)調(diào)用語句 B)命令 C)口令 D)消息,信息屏蔽的概念與下述哪一種概念直接相關(guān),A)軟件結(jié)構(gòu)定義 B)模塊獨立性,C)模塊類型劃分 D)模塊偶合度,下列對象概念描述錯誤的是,A)任何對象都必須有繼承性,B)對象是屬性和方法的封裝體,C)對象間的通訊靠消息傳遞,D)操作是對象的動態(tài)屬性,下列敘述中,不屬于結(jié)構(gòu)化分析方法的是,A)面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法,B)面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法,C)面
10、向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法,D)面向?qū)ο蟮姆治龇椒?在面向?qū)ο蟮某绦蛟O(shè)計中,類描述的是具有相似性質(zhì)的一組,【3】,在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機制稱為,【2】,。,一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的,【3】,。,面向?qū)ο蟮哪P椭校罨镜母拍钍菍ο蠛?【3】,。,是一個支持集成的抽象數(shù)據(jù)類型,而對象是類的,【3】,。,在面向?qū)ο蟮脑O(shè)計中,用來請求對象執(zhí)行某一處理或回答某些信息的要求稱為,【4】,。,在程序設(shè)計階段應(yīng)該采取,【2】,和逐步求精的方法,把一個模塊的功能逐步分解,細化為一系列具體的步驟,進而用某種程序設(shè)計語言寫成程序。,【3】,是一種信息隱蔽技術(shù),目的在于將對象的使用者和對象的設(shè)計者分開。,可以把具有相同屬性的一些不同對象歸類,稱為,【3】,。,子程序通常分為兩類:,【2】,和函數(shù),前者是命令的抽象,后者是為了求值。,源程序文檔化要求程序應(yīng)加注釋。注釋一般分為序言性注釋和_。,在面向?qū)ο蠓椒ǚN,信息屏蔽是通過對象的_性來實現(xiàn)的。,類是一個支持集成的抽象數(shù)據(jù)類型,而對象是類的_。,在面向?qū)ο蠓椒ǚN,類之間共享屬性和操作的機制稱為_。,