江西DTO-40生產(chǎn),鈉鹽皂化物經(jīng)回收,并用硫酸酸化后得到粗妥爾油(CTO),其主要成分為脂肪酸和樹(shù)脂酸。
因?yàn)檫@些類(lèi)都代表了一些信息,所以,把“信息”加到類(lèi)和屬性名中。因?yàn)轭?lèi)的屬性是“類(lèi)的”屬性,所以,給屬性前面加上類(lèi)的名稱(chēng)。因?yàn)殛P(guān)聯(lián)也是屬性的一種,只不過(guò)類(lèi)型是另一個(gè)類(lèi),所以,每個(gè)類(lèi)為關(guān)聯(lián)加一個(gè)屬性。因?yàn)槊總€(gè)對(duì)象都有標(biāo)識(shí),每個(gè)對(duì)象都有狀態(tài),所以,給每個(gè)類(lèi)加上ID和狀態(tài)屬性。(關(guān)聯(lián)、狀態(tài)等相關(guān)知識(shí),后文講述。)
但也不是所有時(shí)候都忍得住,例如,圖8-50是“Domain-Driven Design: Tackling Complexity in the Heart of Software”中的一張類(lèi)圖,其中,Delivery和Handling已經(jīng)是名詞,History和Event沒(méi)有帶來(lái)有價(jià)值的額外信息,可以刪掉。
以前經(jīng)常會(huì)考慮轉(zhuǎn)換到編程語(yǔ)言時(shí)需要改名的問(wèn)題。在設(shè)計(jì)工作流,如果我們使用的編程語(yǔ)言只能用英語(yǔ)命名類(lèi)、屬性、操作等——更嚴(yán)謹(jǐn)?shù)恼f(shuō)法應(yīng)該是編譯器廣泛支持的字符集比較小,那么還需要一個(gè)對(duì)編程語(yǔ)言合法的名字。
如果用復(fù)數(shù)表達(dá),例如漢語(yǔ)“人們”,英語(yǔ)“people”,第種用法就很別扭了,實(shí)例“某個(gè)人們”是什么?圖8-52 類(lèi)命名用單數(shù)如果“某個(gè)人們”另有含義,那么應(yīng)該有另外一個(gè)類(lèi)。例如,社區(qū)團(tuán)購(gòu)系統(tǒng)中,“某個(gè)顧客們”另有含義“團(tuán)”,那么應(yīng)該添加一個(gè)類(lèi)“團(tuán)”。
以餐館的取號(hào)機(jī)為目標(biāo)系統(tǒng)。食客輸入有幾人就餐,請(qǐng)求取號(hào),系統(tǒng)打印出排號(hào)單,上面的信息有餐臺(tái)類(lèi)型(大中小……),排隊(duì)號(hào)碼。請(qǐng)問(wèn):如果對(duì)目標(biāo)系統(tǒng)使用面向?qū)ο蠓治?,根?jù)以上信息判斷,以下選項(xiàng)中,屬于系統(tǒng)的分析類(lèi)且命名合適的有:軟件開(kāi)發(fā)人員和涉眾交流某個(gè)問(wèn)題時(shí),涉眾提到一個(gè)他工作中的專(zhuān)業(yè)術(shù)語(yǔ)“差動(dòng)保護(hù)”,開(kāi)發(fā)人員很難理解。對(duì)此,以下說(shuō)法錯(cuò)誤的有: