舉例說明面向?qū)ο蠛兔嫦蜻^程的區(qū)別_第1頁(yè)
舉例說明面向?qū)ο蠛兔嫦蜻^程的區(qū)別_第2頁(yè)
舉例說明面向?qū)ο蠛兔嫦蜻^程的區(qū)別_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、舉例說明面向?qū)ο蠛兔嫦蜻^程的區(qū)別兩種方法都是編程中的比較常用的方法,從理論上來說,都能達(dá)到用計(jì)算機(jī) 程序來解決實(shí)際問題的目的,只不過是其中所體現(xiàn)出來的思想不一樣而已。面向過程:面向過程的思想是把一個(gè)項(xiàng)目、一件事情按照一定的順序,從頭 到尾一步一步地做下去,先做什么,后做什么,一直到結(jié)束。這種思想比較好理 解,其實(shí)這也是一個(gè)人做事的方法。面向?qū)ο螅好嫦驅(qū)ο蟮乃枷胧前岩粋€(gè)項(xiàng)目、一件事情分成更小的項(xiàng)目,或者 說分成一個(gè)個(gè)更小的部分,每一部分負(fù)責(zé)什么方面的功能,最后再由這些部分組 合而成為一個(gè)整體。這種思想比較適合多人的分工合作,就像一個(gè)大的機(jī)關(guān),分 成各個(gè)部門,每個(gè)部門分別負(fù)責(zé)某樣職能,各個(gè)部門可以

2、充分發(fā)揮自己的特色, 只要符合一定前提就行了。舉例說明1:比如剛才說的一個(gè)大的機(jī)關(guān),要做某一個(gè)項(xiàng)目,從面向過程的思想 來說,應(yīng)該是這樣分析的,先怎么樣,再怎么樣,最后怎么樣。第一樣應(yīng)該如何 完成,第二樣應(yīng)該如何完成等等。等到每一步驟都完成,項(xiàng)目也就完成了。而面 向?qū)ο蟮乃枷雱t應(yīng)該是這樣想的,這個(gè)項(xiàng)目是由幾個(gè)部分組成的,我們就做好分 工,成立一個(gè)部門來做一個(gè)部分的功能,另一個(gè)部門來做另一個(gè)部分。各個(gè)部門 可以不用理解其他部門的事,只要完成自己那一部分的事情就OK 了。舉例說明2:又比如我們有一臺(tái)演出,為簡(jiǎn)單起見,假設(shè)有如下流程:主持人開 場(chǎng)一一演員一表演一一演員二表演一一主持人總結(jié)。用面向過程的

3、思想來分析, 就是先完成主持人開場(chǎng),再完成演員一的表演,再完成演員二的表演,最后完成 主持人的總結(jié)。而如果用面向?qū)ο蟮乃枷雭矸治觯蛻?yīng)該是這樣的。這個(gè)演出由 兩大部分組成:主持人、演員。與主持人相關(guān)的:開場(chǎng)、總結(jié)。與演員相關(guān)的: 演員編號(hào)、所演的節(jié)目。然后這臺(tái)演出就可以這樣策劃:需要一個(gè)主持人a,需要兩個(gè)演員b、c。演出的事情可以表示為:a的開場(chǎng) b、c的編號(hào)和節(jié)目 a的總結(jié)。面向?qū)ο蠛兔嫦蜻^程的區(qū)別示例之下棋面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一 步一步實(shí)現(xiàn),使用的時(shí)候一個(gè)一個(gè)依次調(diào)用就可以了。面向?qū)ο笫前褬?gòu)成問題事 務(wù)分解成各個(gè)對(duì)象,建立對(duì)象的目的不是為了完成一個(gè)步

4、驟,而是為了描敘某個(gè) 事物在整個(gè)解決問題的步驟中的行為。例如五子棋,面向過程的設(shè)計(jì)思路就是首先分析問題的步驟:1、開始游戲,2、黑子先走,3、繪制畫面,4、判斷輸贏,5、輪到白子,6、繪制畫面,7、判斷輸贏,8、返回步驟2,9、輸出最后結(jié)果。把上面每個(gè)步驟用分別的函數(shù)來實(shí)現(xiàn),問題就解決了。而面向?qū)ο蟮脑O(shè)計(jì)則是從另外的思路來解決問題。整個(gè)五子棋可以分為:1、黑白雙方,這兩方的行為是一模一樣的,2、棋盤系統(tǒng),負(fù)責(zé)繪制畫面,3、規(guī)則系統(tǒng),負(fù)責(zé)判定諸如犯規(guī)、輸贏等。第一類對(duì)象(玩家對(duì)象)負(fù)責(zé)接受用戶輸入,并告知第二類對(duì)象(棋盤對(duì)象) 棋子布局的變化,棋盤對(duì)象接收到了棋子的變化就要負(fù)責(zé)在屏幕上面顯示出這種 變化,同時(shí)利用第三類對(duì)象(規(guī)則系統(tǒng))來對(duì)棋局進(jìn)行判定??梢悦黠@地看出,面向?qū)ο笫且怨δ軄韯澐謫栴},而不是步驟。同樣是繪制 棋局,這樣的行為在面向過程的設(shè)計(jì)中分散在了許多步驟中,很可能出現(xiàn)不同的 繪制版本,因?yàn)橥ǔTO(shè)計(jì)人員會(huì)考慮到實(shí)際情況進(jìn)行各種各樣的簡(jiǎn)化。而面向?qū)?象的設(shè)計(jì)中,繪圖只可能在棋盤對(duì)象中出現(xiàn),從而保證了繪圖的統(tǒng)一。功能上的統(tǒng)一保證了面向?qū)ο笤O(shè)計(jì)的可擴(kuò)展性。比如我要加入悔棋的功能, 如果要改動(dòng)面向過程的設(shè)計(jì),那么從輸入到判斷到顯示這一連串的步驟都要改 動(dòng),甚至步驟之間的順序都要進(jìn)行大規(guī)模調(diào)整。如果是面向?qū)ο蟮脑挘挥酶膭?dòng) 棋盤對(duì)象就行了,棋盤系統(tǒng)保存了黑白雙方的棋譜,簡(jiǎn)單回

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論