1.對(duì)象定義規(guī)格的求精過(guò)程
對(duì)于O0A所抽象出來(lái)的對(duì)象類(lèi)以及匯集的分析文檔,0OD需要有一個(gè)根據(jù)設(shè)計(jì)要求整理和求精的過(guò)程,使之更能符合OOP的需要。這個(gè)整理和求精過(guò)程主要有兩個(gè)方面:一是要根據(jù)面向?qū)ο蟮母拍钅P驼矸治鏊_定的對(duì)象結(jié)構(gòu)、屬性、方法等內(nèi)容,改正錯(cuò)誤的內(nèi)容,刪去不必要和重復(fù)的內(nèi)容等。二是進(jìn)行分類(lèi)整理, 以便于下一步數(shù)據(jù)庫(kù)設(shè)計(jì)和程序處理模塊設(shè)計(jì)的需要。整理的方法主要是進(jìn)行歸類(lèi),對(duì)類(lèi)、對(duì)象,屬性,方法和結(jié)構(gòu),主題進(jìn)行歸類(lèi)。
2.數(shù)據(jù)模型和數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)模型的設(shè)計(jì)需要確定類(lèi)或?qū)ο髮傩缘膬?nèi)容,消息連接的方式,系統(tǒng)訪問(wèn)、數(shù)據(jù)模型的方法等。最后每個(gè)對(duì)象實(shí)例的數(shù)據(jù)都必須落實(shí)到面向?qū)ο蟮膸?kù)結(jié)構(gòu)模型中。
每個(gè)對(duì)象都有自己的屬性和狀態(tài),我們需要把這個(gè)對(duì)象的屬性和狀態(tài)保存在數(shù)據(jù)庫(kù)中,那么最理想最簡(jiǎn)單的情況,就是一個(gè)對(duì)象對(duì)應(yīng)張物理表, 而對(duì)象之間的關(guān)聯(lián)關(guān)系(一對(duì)一,一對(duì)多,多對(duì)多)也可以簡(jiǎn)單映射成數(shù)據(jù)庫(kù)的主一外鍵關(guān)系。但還有很多非數(shù)據(jù)庫(kù)關(guān)系需要考慮,如:繼承、聚合、依賴(lài)等。張表如何繼承自另一張表呢? 關(guān)系數(shù)據(jù)庫(kù)顯然沒(méi)有這樣的定義,這就需要用OR mapping來(lái)完成這種語(yǔ)義的轉(zhuǎn)換。例如,當(dāng)實(shí)例化一個(gè)子對(duì)象時(shí),OR -mapping負(fù)責(zé)從代表了“父”對(duì)象的表中讀出父對(duì)象屬性并將其賦值給子對(duì)象,并且當(dāng)父對(duì)象變化時(shí),OR-mapping需要把這一變化反映到所有 子對(duì)象實(shí)例。
3.優(yōu)化
象和結(jié)構(gòu)的優(yōu)化、抽象、集成。00D的優(yōu)化設(shè)計(jì)過(guò)程是從另一個(gè)角度對(duì)分析結(jié)果和處理業(yè)務(wù)過(guò)程的整理歸納,優(yōu)化包括對(duì)
模塊符合一般模塊化所要求的且模塊之間期合度弱。集成化使得單個(gè)構(gòu)件有機(jī)地結(jié)合在一起,對(duì)象和結(jié)構(gòu)的模塊化表示00D提供了一種范式,這種范式支持對(duì)類(lèi)和結(jié)構(gòu)的模塊化。這種相互支持。
4.狀態(tài)圖
狀態(tài)圖表示某個(gè)類(lèi)所處的不同狀態(tài)和該類(lèi)的狀態(tài)轉(zhuǎn)換信息。每個(gè)類(lèi)都有狀態(tài),但不是每個(gè)類(lèi)都應(yīng)該有一個(gè)狀態(tài)圖。只對(duì)“感興趣的”狀態(tài)的類(lèi)(也就是說(shuō),在系統(tǒng)活動(dòng)期間具有三個(gè)或更多潛在狀態(tài)的類(lèi))才進(jìn)行狀態(tài)圖描述。
狀態(tài)圖的符號(hào)集包括5個(gè)基本元素:初始起點(diǎn),它使用實(shí)心圓來(lái)繪制;狀態(tài)之間的轉(zhuǎn)換,它使用具有開(kāi)箭頭的線段來(lái)繪制;狀態(tài),它使用圓角矩形來(lái)繪制;判斷點(diǎn),它使用空心圓來(lái)繪制;以及一個(gè)或者多個(gè)終止點(diǎn),它們使用內(nèi)部包含實(shí)心圓的圓來(lái)繪制,如圖2-9所示。要繪制狀態(tài)圖,首先繪制起點(diǎn)和一條指向該類(lèi)的初始狀態(tài)的轉(zhuǎn)換線段。狀態(tài)本身可以在圖上的任意位置繪制,然后只須使用狀態(tài)轉(zhuǎn)換線條將它們連接起來(lái)。
對(duì)象的狀態(tài)是由對(duì)象當(dāng)前的行動(dòng)和條件決定的。狀態(tài)圖(statechart diagram)顯示出了對(duì)象可能的狀態(tài)以及由狀態(tài)改變而導(dǎo)致的轉(zhuǎn)移。圖2-9表示一個(gè)銀行的在線登錄系統(tǒng)。登錄過(guò)程包括輸入合法的個(gè)人賬號(hào)和密碼,再提交給系統(tǒng)驗(yàn)證信息。明港是個(gè)實(shí)界城,ofa1hoDhors.登錄系統(tǒng)可以被劃分 為四種不重疊的狀態(tài): Getting SSN、Getting PIN、Validating以及Rejecting.每個(gè)狀態(tài)都有一套完整的轉(zhuǎn)移transitions來(lái)決定狀態(tài)的順序。
在箭頭的旁邊。我們的圖上有兩個(gè)自轉(zhuǎn)移。一個(gè)是在Cting SN.另個(gè)則在 Gtting PIN上。狀態(tài)是用四角矩形來(lái)表示的。轉(zhuǎn)移則是使用帶箭頭的連線表示。觸發(fā)轉(zhuǎn)移的事件或者條件寫(xiě)初始狀態(tài)(黑色圓圈)是開(kāi)始動(dòng)作的虛擬開(kāi)始。結(jié)束狀態(tài)也是網(wǎng)站建設(shè)動(dòng)作的虛擬結(jié)束。事件或條件觸發(fā)動(dòng)作時(shí)用(動(dòng)作)表示。當(dāng)進(jìn)人Validaing 狀態(tài)時(shí),對(duì)象#不等外部事件觸發(fā)轉(zhuǎn)移。取而代之,它產(chǎn)生一個(gè)動(dòng)作。動(dòng)作的結(jié)果決定了下一步的狀態(tài)。
本文地址:http://m.cdrpkj.cn//article/3713.html