為什么要建模?
就好比如若你自己要建造一座小房子,首先得先給要建造的房子設(shè)計(jì)一張草圖甚至是藍(lán)圖;若要建造一座大廈,首先要做的肯定不是先去所需買(mǎi)材料,而是需要對(duì)建筑物的大小,形狀和樣式做一個(gè)規(guī)劃,做出相應(yīng)的圖紙和模型??赡茉谝?guī)劃中突然有了更好的想法,還可以對(duì)圖紙或模型進(jìn)行不斷的修改。這樣直到對(duì)圖紙、對(duì)模型滿意之后再進(jìn)行施工。這樣不僅建造出滿意的大廈還能提高施工的效率。
建筑物需要建模,同樣,軟件也需要建模,就像之前沒(méi)有任何建模的情況下直接進(jìn)行《機(jī)房收費(fèi)系統(tǒng)》的軟件開(kāi)發(fā),而且還妄圖開(kāi)發(fā)出高質(zhì)量的產(chǎn)品,結(jié)果就是軟件不斷地有bug,甚至有時(shí)候都不知道問(wèn)題出在了哪里。
所以說(shuō),如果沒(méi)有對(duì)代碼結(jié)構(gòu)、過(guò)程和工具的詳細(xì)計(jì)劃,很大的可能都會(huì)是一個(gè)失敗的產(chǎn)品??吹揭痪湓捠牵好恳粋€(gè)失敗的軟件項(xiàng)目都有其特殊的原因,但是成功的項(xiàng)目在許多方面都是類(lèi)似的,軟件組織獲得成功的因素有很多,但是一個(gè)基本的因素就是對(duì)建模的使用。
建模的目標(biāo)
1、便于開(kāi)發(fā)人員展現(xiàn)系統(tǒng)
2、允許開(kāi)發(fā)人員指定系統(tǒng)的結(jié)構(gòu)或行為
3、提供指導(dǎo)開(kāi)發(fā)人員構(gòu)造系統(tǒng)的模板
4、記錄開(kāi)發(fā)人員的決策
通用建模語(yǔ)言的必要性
對(duì)比項(xiàng)目的復(fù)雜度會(huì)發(fā)現(xiàn),越簡(jiǎn)單的項(xiàng)目,使用規(guī)范建模的可能性越小。實(shí)際上,即便是最小的項(xiàng)目,開(kāi)發(fā)人員也要建立模型,雖然說(shuō)很不規(guī)范。開(kāi)發(fā)者可以在一塊黑板或者一小片紙上概略地描述一下系統(tǒng)的某個(gè)部分,團(tuán)隊(duì)可以使用CRC(類(lèi)一責(zé)任一協(xié)作者模型)卡片來(lái)驗(yàn)證設(shè)計(jì)的可行性。這些模型本身沒(méi)有任何錯(cuò)誤,只要有用就盡可能地使用。但是這種不正規(guī)的模型通常情況下很難被其他開(kāi)發(fā)者所共享,因?yàn)樘袀€(gè)性色彩了。正因?yàn)檫@樣,通用建模語(yǔ)言的存在成為必然。
每個(gè)項(xiàng)目都可以從建模中受益。甚至在自由軟件領(lǐng)域,模型可以幫助開(kāi)發(fā)小組更好的規(guī)劃系統(tǒng)設(shè)計(jì),更快地開(kāi)發(fā)。所有受人關(guān)注的有用的系統(tǒng)都有一個(gè)隨著時(shí)間推移越來(lái)越復(fù)雜的趨勢(shì),如果不建立模型,那么失敗的可能性就和項(xiàng)目的復(fù)雜度成正比。
建模四原則
1、選擇建立什么樣的模型對(duì)如何發(fā)現(xiàn)和解決問(wèn)題具有重要的影響。就是說(shuō)選擇正確的模型。
2、每個(gè)模型可以有多重表達(dá)方式
3、好的模型總是能夠切合實(shí)際
4、孤立的模型是不完整的
面向?qū)ο蠼?/b>
面向?qū)ο蠼V饕K是對(duì)象或者類(lèi)。對(duì)象通常是從問(wèn)題字典或者方法字典中抽象出來(lái)的,類(lèi)是對(duì)一組具有共同特點(diǎn)的對(duì)象的描述,每一個(gè)對(duì)象都有自己的標(biāo)識(shí)、狀態(tài)和行為。
也就是說(shuō),他可以描述一個(gè)軟件從需求分析直到實(shí)現(xiàn)和測(cè)試的開(kāi)發(fā)全過(guò)程。
對(duì)于建模還有任何不懂得問(wèn)題歡迎咨詢(xún),免費(fèi)教材分享