版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 西安科技大學(xué) 程序設(shè)計(jì)方法學(xué) 的復(fù)習(xí)筆記 姓名: XXX 學(xué)號(hào): 120801XXXX 專業(yè)班級(jí):軟件工程12XX班第一章緒論:一:程序設(shè)計(jì)方法學(xué):指的是在計(jì)算機(jī)上用可執(zhí)行的程序化代碼來(lái)有效的描述與解決特定問(wèn)題算法的過(guò)程。歷經(jīng)階段:面向計(jì)算機(jī)的程序設(shè)計(jì) 2、面向過(guò)程的程序設(shè)計(jì) 3、面向?qū)ο蟮某绦蛟O(shè)計(jì) (封裝,繼承,;多態(tài)) 4、面向組件式的程序設(shè)計(jì) 5、其他的程序設(shè)計(jì)(遞歸,嵌入式) 二:三種基本的程序結(jié)構(gòu)(結(jié)構(gòu)流程圖) 1:選擇結(jié)構(gòu) 2:順序結(jié)構(gòu) 3:循環(huán)結(jié)構(gòu)三:算法: 含義:所謂算法就是指解決特定問(wèn)題而需要執(zhí)行者一步一步的施行的有窮操作過(guò)程的描述。 5大特征:有窮行 確定性 數(shù)據(jù)輸入 信
2、息輸出 可執(zhí)行性四:程序設(shè)計(jì)的表示方法:圖形(程序流程圖) 表格(判定表) 語(yǔ)言(程設(shè)計(jì)語(yǔ)言)五:程序設(shè)計(jì)的基本特征 結(jié)構(gòu)化 模塊化 對(duì)象化 (OOP,Object Oriented Programming) 智能化 (AOP, Agent Oriented Programming) 第二章節(jié) 一:圖靈機(jī)的概念: 圖靈機(jī)是一種抽象計(jì)算模型,用來(lái)精確定義可計(jì)算函數(shù),是由一個(gè)控制器和一根假設(shè)無(wú)線長(zhǎng)的工作帶組成,工作帶起著儲(chǔ)存作用,被劃分為很多大小相同的方格,每個(gè)方格上可以書寫特定的英文字母二: 通用圖靈機(jī)的思想: 把任意一臺(tái)圖靈機(jī)T的指令表編碼成在磁帶上表示為0和1的串。第三章 結(jié)構(gòu)化程序設(shè)計(jì)方法
3、 一:GOTO語(yǔ)句的三大缺點(diǎn): 1、破換了程序的動(dòng)靜一致性 2、程序不易測(cè)試 3、限制了代碼的優(yōu)化二:結(jié)構(gòu)化程序設(shè)計(jì): 1:所謂結(jié)構(gòu)化程序設(shè)計(jì):就是采用以逐步降低算法抽象級(jí)為中心的一套程序設(shè)計(jì)方法而得到的具有良好結(jié)構(gòu)的程序。 2:好的結(jié)構(gòu)化程序的特點(diǎn): 一個(gè)比較好的結(jié)構(gòu)程序在結(jié)構(gòu)方面應(yīng)具有以下兩個(gè)特點(diǎn): (1)大型程序按照其功能進(jìn)行模塊化分 (2)每一個(gè)基本程序單元具有的特征: 單入口、單出口 由三種基本結(jié)構(gòu)組成,控制使用goto語(yǔ)句 無(wú)死語(yǔ)句,即程序中不存在永遠(yuǎn)執(zhí)行不到的語(yǔ)句 無(wú)死循環(huán) 書寫格式清晰 3:優(yōu)點(diǎn)(1)程序便于分工編制(2)有利于提高軟件的生產(chǎn)效率(3)結(jié)構(gòu)清晰,易于閱讀理解和保
4、證其可靠性(4)易于修改,便于維護(hù)和驗(yàn)證其正確性(5)易于移植三:逐步求精含義:既是一種程序設(shè)計(jì)方法,也是驗(yàn)證程序正確性的方法四:NS圖主要特點(diǎn)是:(1)不使用流線,即不允許流程任意轉(zhuǎn)移,而只能從上到下順序進(jìn)行。這樣避免了流程轉(zhuǎn)來(lái)轉(zhuǎn)去而影響流程思路的理解;(2)采用三種基本結(jié)構(gòu)作為構(gòu)造算法的基本單元: 1)順序結(jié)構(gòu):在這種結(jié)構(gòu)中各模塊是按照他們出現(xiàn)的先后順序執(zhí)行的,即A模塊先于B模塊執(zhí)行,A與B模塊之間是順序關(guān)系 1、選擇結(jié)構(gòu):在計(jì)算機(jī)應(yīng)用的許多場(chǎng)合,要求程序按照給定的條件進(jìn)行分析、比較和判斷,并根據(jù)判斷后的不同情況進(jìn)行不同的處理。此類情況即為選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu):循環(huán)是指對(duì)同一個(gè)程序段重復(fù)執(zhí)行
5、若干次,被重復(fù)執(zhí)行的部分成為循環(huán)體。循環(huán)結(jié)構(gòu)就是根據(jù)給定條件成立與否,來(lái)決定是否執(zhí)行循環(huán)體。五:非結(jié)構(gòu)化到結(jié)構(gòu)化程序的轉(zhuǎn)化1:代碼復(fù)制法2:條件復(fù)合技術(shù)3:布爾標(biāo)志技術(shù)第四章:設(shè)計(jì)模式一: 設(shè)計(jì)模式的三種模型分類: A 創(chuàng)建型模式:5種 1、單例模式:?jiǎn)卫J酱_保某一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例單例模式。單例模式只應(yīng)在有真正的“單一實(shí)例”的需求時(shí)才可使用。 2、抽象工廠模式:客戶類和工廠類分開。消費(fèi)者任何時(shí)候需要某種產(chǎn)品,只需向工廠請(qǐng)求即可。消費(fèi)者無(wú)須修改就可以接納新產(chǎn)品。缺點(diǎn)是當(dāng)產(chǎn)品修改時(shí),工廠類也要做相應(yīng)的修改。如:如何創(chuàng)建及如何向客戶端提供。 3、建造者模式:
6、將對(duì)象的內(nèi)部表象和對(duì)象的生成過(guò)程分割開來(lái),從而使一個(gè)建造過(guò)程生成具有不同的內(nèi)部表象的產(chǎn)品對(duì)象。建造模式使得產(chǎn)品內(nèi)部表象可以獨(dú)立的變化,客戶不必知道產(chǎn)品內(nèi)部組成的細(xì)節(jié)。建造模式可以強(qiáng)制實(shí)行一種分步驟進(jìn)行的建造過(guò)程。 4、工廠模式:核心工廠類不再負(fù)責(zé)所有產(chǎn)品的創(chuàng)建,而是將具體創(chuàng)建的工作交給子類去做,成為一個(gè)抽象工廠角色,僅負(fù)責(zé)給出具體工廠類必須實(shí)現(xiàn)的接口,而不接觸哪一個(gè)產(chǎn)品類應(yīng)當(dāng)被實(shí)例化這種細(xì)節(jié)。 5、原型模式:通過(guò)給出一個(gè)原型對(duì)象來(lái)指明所要?jiǎng)?chuàng)建的對(duì)象的類型,然后用復(fù)制這個(gè)原型對(duì)象的方法創(chuàng)建出更多同類型的對(duì)象。原始模型模式允許動(dòng)態(tài)的增加或減少產(chǎn)品類,產(chǎn)品類不需要非得有任何事先確定的等級(jí)結(jié)構(gòu),原始模
7、型模式適用于任何的等級(jí)結(jié)構(gòu)。缺點(diǎn)是每一個(gè)類都必須配備一個(gè)克隆方法。 B 結(jié)構(gòu)型模式:7種 1:適配器模式: 把一個(gè)類的接口變換成客戶端所期待的另一種接口,從而使原本因接口原因不匹配而無(wú)法一起工作的兩個(gè)類能夠一起工作。適配類可以根據(jù)參數(shù)返還一個(gè)合適的實(shí)例給客戶端。 2:橋接模式: 將抽象化與實(shí)現(xiàn)化脫耦,使得二者可以獨(dú)立的變化,也就是說(shuō)將他們之間的強(qiáng)關(guān)聯(lián)變成弱關(guān)聯(lián),也就是指在一個(gè)軟件系統(tǒng)的抽象化和實(shí)現(xiàn)化之間使用組合/聚合關(guān)系而不是繼承關(guān)系,從而使兩者可以獨(dú)立的變化。 3:裝飾模式:裝飾模式以對(duì)客戶端透明的方式擴(kuò)展對(duì)象的功能,是繼承關(guān)系的一個(gè)替代方案,提供比繼承更多的靈活性。動(dòng)態(tài)給一個(gè)對(duì)象增加功能,
8、這些功能可以再動(dòng)態(tài)的撤消。增加由一些基本功能的排列組合而產(chǎn)生的非常大量的功能。 4:組合模式: 5:外觀模式: 6:享元模式:享元模式以共享的方式高效的支持大量的細(xì)粒度對(duì)象。享元模式能做到共享的關(guān)鍵是區(qū)分內(nèi)蘊(yùn)狀態(tài)和外蘊(yùn)狀態(tài)。 7: 代理模式;代理模式給某一個(gè)對(duì)象提供一個(gè)代理對(duì)象,并由代理對(duì)象控制對(duì)源對(duì)象的引用。 C 行為型模式: 模版方法模式、命令模式、迭代器模式、觀察者模式、中介者模式、備忘錄模式、解釋器模式、狀態(tài)模式、策略模式、職責(zé)鏈模式、訪問(wèn)者模式。策略模式:策略模式針對(duì)一組算法,將每一個(gè)算法封裝到具有共同接口的獨(dú)立的類中,從而使得它們可以相互替換。策略模式使得算法可以在不影響到客戶端的
9、情況下發(fā)生變化。策略模式把行為和環(huán)境分開。環(huán)境類負(fù)責(zé)維持和查詢行為類,各種算法在具體的策略類中提供。由于算法和環(huán)境獨(dú)立開來(lái),算法的增減,修改都不會(huì)影響到環(huán)境和客戶端模板方法模式:模板方法模式準(zhǔn)備一個(gè)抽象類,將部分邏輯以具體方法以及具體構(gòu)造子的形式實(shí)現(xiàn),然后聲明一些抽象方法來(lái)迫使子類實(shí)現(xiàn)剩余的邏輯。不同的子類可以以不同的方式實(shí)現(xiàn)這些抽象方法,從而對(duì)剩余的邏輯有不同的實(shí)現(xiàn)。先制定一個(gè)頂級(jí)邏輯框架,而將邏輯的細(xì)節(jié)留給具體的子類去實(shí)現(xiàn)面向?qū)ο缶幊蹋∣OP)技術(shù)面向?qū)ο螅∣O)技術(shù)向?qū)ο缶幊陶Z(yǔ)言(OOPL)的三大機(jī)制“封裝、繼承、多態(tài)”第五章 組件組件的概念:可以自行進(jìn)行內(nèi)部管理的一個(gè)或多個(gè)類組成的群體
10、組件技術(shù)的特點(diǎn):真正的軟件重用和高度的互操作性接口的可靠性可擴(kuò)充服務(wù)具有強(qiáng)有力的基礎(chǔ)設(shè)施具有構(gòu)建和膠合組件的工具常用的組件模型對(duì)象管理組織OMG( Object Management Group,)的 公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu) CORBA(Common Object Request Broker Architecture, ) Microsoft公司的 組件對(duì)象模型COM( Component Object Model,)/分布式組件對(duì)象模型DCOM(Distributed )SUN公司的EJB(Enterprise JavaBeans )組件技術(shù)與面向?qū)ο蠹夹g(shù)的比較: 組件技術(shù) 面向?qū)ο蠹夹g(shù)
11、目標(biāo) 應(yīng)用程序間的更大范圍的組件的重用 應(yīng)用程序內(nèi)更大行為的重用基本關(guān)系 請(qǐng)求/響應(yīng)的關(guān)系 行為的繼承關(guān)系重點(diǎn) 組件接口不變 可擴(kuò)展的類的層次關(guān)系最終目的 應(yīng)用程序具有定義良好的接口, 應(yīng)用程序通過(guò)對(duì)象、類的層次關(guān) 可以很容易地替換其中的組件 系的擴(kuò)展來(lái)改變行為 IUnknown()接口是COM組件的核心接口,所有其他COM接口都必須從IUnknown繼承。IUnknown接口包含了三個(gè)成員函數(shù)(方法):QueryInterfaceAddRefReleaseCOM接口的特點(diǎn)1、二進(jìn)制特性:接口規(guī)范并不建立在任何編程語(yǔ)言的基礎(chǔ)上,而是規(guī)定了二進(jìn)制一級(jí)的標(biāo)準(zhǔn)。任何語(yǔ)言只要有足夠的數(shù)據(jù)表達(dá)能力,就可
12、以對(duì)接口進(jìn)行描述,從而可以用于組件程序有關(guān)的應(yīng)用開發(fā)。2、接口不變性:接口是組件客戶程序和組件對(duì)象之間的橋梁,接口如果經(jīng)常發(fā)生變化,則客戶程序和組件程序也要跟著變化,這對(duì)于應(yīng)用系統(tǒng)的開發(fā)非常不利,也不符合組件化程序設(shè)計(jì)的思想,所以接口應(yīng)該保持不變3、繼承性:COM接口具有普遍性,但不變性并不意味著接口不再發(fā)展,隨著應(yīng)用系統(tǒng)和組件程序的發(fā)展,接口也需要發(fā)展。類似于C+中類的繼承性,接口也可以繼承發(fā)展,但接口繼承與類繼承不同。4、多態(tài)性:多態(tài)性是面向?qū)ο笙到y(tǒng)的重要特性,COM對(duì)象也具有多態(tài)性,其多態(tài)性通過(guò)COM接口體現(xiàn)。第六章 遞歸程序設(shè)計(jì)方法遞歸模型:f(S 0)=M 0 (0為下標(biāo))遞歸求值過(guò)程就是從一個(gè)已知值推出下一個(gè)值的過(guò)程。 遞歸的執(zhí)行過(guò)程: 分解和求值 歷經(jīng)很多步才能求出最后的值 遞歸問(wèn)題 從大到小的分解和樹型結(jié)構(gòu)的從整體到局部的分解是類似的 第一次調(diào)用就是對(duì)應(yīng)樹型的根節(jié)點(diǎn),遞歸調(diào)用的結(jié)束就對(duì)應(yīng)樹的葉子節(jié)點(diǎn),遞歸的實(shí)現(xiàn)轉(zhuǎn)化為樹的遍歷遞歸算法到非遞歸算法的變換采用迭代解法末尾遞歸的消除使用堆棧 使用堆棧的思想:如果一個(gè)遞歸問(wèn)題既不容易找到迭代方法又不屬于末尾遞歸的情況,總還可以利用堆棧為其設(shè)計(jì)出非遞歸的算法第九章:AndroidAndroid 的優(yōu)點(diǎn):1、真正開放性2、應(yīng)用程序相互平等3、應(yīng)用程序之間溝通無(wú)界限4、快速方便的應(yīng)用程序開發(fā)Android
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)用供氣工崗前崗位安全考核試卷含答案
- 老年空巢家庭的遠(yuǎn)程溝通輔助方案
- 汽輪機(jī)輔機(jī)值班員變更管理知識(shí)考核試卷含答案
- 鐵路行業(yè)就業(yè)前景
- 出院祝福話術(shù)模板
- 春節(jié)安全宣傳動(dòng)畫素材講解
- 2026廣東廣州市海珠區(qū)昌崗街道招聘公益性崗位1人備考題庫(kù)及1套完整答案詳解
- 乙型肝炎患者的并發(fā)癥預(yù)防與處理
- 交通違法行為舉報(bào)獎(jiǎng)勵(lì)制度
- 2026年及未來(lái)5年市場(chǎng)數(shù)據(jù)中國(guó)碲化鎘薄膜太陽(yáng)能電池行業(yè)市場(chǎng)需求預(yù)測(cè)及投資戰(zhàn)略規(guī)劃報(bào)告
- 2026屆廣東省江門市普通高中化學(xué)高二第一學(xué)期期末調(diào)研模擬試題含答案
- 園林綠化施工工藝及注意事項(xiàng)
- 2025年高中語(yǔ)文必修上冊(cè)《登泰山記》文言文對(duì)比閱讀訓(xùn)練(含答案)
- 2025年金蝶AI蒼穹平臺(tái)新一代企業(yè)級(jí)AI平臺(tái)報(bào)告-
- 2026屆山東菏澤一中高三化學(xué)第一學(xué)期期末達(dá)標(biāo)測(cè)試試題含解析
- 2025中國(guó)機(jī)械工業(yè)集團(tuán)有限公司(國(guó)機(jī)集團(tuán))社會(huì)招聘19人筆試參考題庫(kù)附答案
- 二年級(jí)上冊(cè)100以內(nèi)的數(shù)學(xué)加減混合口算題500道-A4直接打印
- 2025年二級(jí)造價(jià)師《土建工程實(shí)務(wù)》真題卷(附解析)
- 智慧農(nóng)業(yè)管理中的信息安全對(duì)策
- 港口安全生產(chǎn)知識(shí)培訓(xùn)課件
- 通信凝凍期間安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論