只需四步,輕松學(xué)習(xí)UML
本節(jié)向大家介紹一下學(xué)習(xí)UML的方法,這里介紹的方法主要有四步,希望通過(guò)本節(jié)的學(xué)習(xí)你能夠快速掌握,下面就讓我們一起來(lái)學(xué)習(xí)UML吧。
學(xué)習(xí)UML之四步走戰(zhàn)略
最近幾年,隨著UML(UnifiedModelingLanguage,統(tǒng)一建模語(yǔ)言)的不斷完善,其已被廣泛運(yùn)用于軟件行業(yè)。掌握UML是每一個(gè)軟件開(kāi)發(fā)人提升自己能力的一個(gè)重要內(nèi)容。下面,我想談一談我對(duì)UML學(xué)習(xí)的一些想法。
UML是建立在面向?qū)ο蟮幕A(chǔ)之上的,如果你是一名面向?qū)ο笳Z(yǔ)言的軟件開(kāi)發(fā)人員,那么,學(xué)習(xí)UML將相對(duì)的容易。容易是指其中的很多概念我們已經(jīng)很熟悉了,比如類(lèi)、屬性、抽象等等。如果不是一名面向?qū)ο笳Z(yǔ)言的開(kāi)發(fā)人員,那么學(xué)習(xí)UML可能會(huì)相對(duì)的抽象,難度可能也就大一點(diǎn)。
學(xué)習(xí)UML的***步是從網(wǎng)上找一些培訓(xùn)材料,在OMG(ObjectManagementGroup,UML規(guī)范的制定組織)的網(wǎng)站上就能找到一些很好的培訓(xùn)材料,一定要學(xué)習(xí)針對(duì)UML2.x的材料,請(qǐng)不要學(xué)習(xí)針對(duì)UML1.x的材料。在這些培訓(xùn)材料中,通常不是講授UML的全部?jī)?nèi)容,但是作為UML的實(shí)學(xué)者,這些內(nèi)容作為開(kāi)始是足夠了的。通過(guò)學(xué)習(xí),掌握UML有幾種圖,每種圖的作用和應(yīng)有場(chǎng)合是什么,每一種圖有哪些元素,等等。
第二步是,我們需要將學(xué)到的UML知識(shí)運(yùn)用到我們的工作中。可能,我們的工作單位并不要求我們?nèi)ビ肬ML,但作為學(xué)習(xí),我們需要自己找機(jī)會(huì)去練習(xí)。任何一種東西,只有用多了(或說(shuō)是模仿多了),我們才能更好的理解它,進(jìn)而駕馭它。想想我們所使用的開(kāi)發(fā)語(yǔ)言,我們一開(kāi)始也不熟悉,但使用長(zhǎng)了以后,對(duì)于應(yīng)用問(wèn)題,我們很自然的(自然到成了自覺(jué))知道如何用語(yǔ)言去實(shí)現(xiàn)所需的應(yīng)用功能。在這一點(diǎn)上學(xué)習(xí)UML也是同樣的,還是那句話(huà)“熟能生巧”。這一階段我們可能需要花較長(zhǎng)的時(shí)間,而且,我們會(huì)碰到很多情況下,不知道所要表達(dá)的內(nèi)容在UML中應(yīng)當(dāng)如何表達(dá),這可以說(shuō)是比較痛苦的過(guò)程,但別忘了,只有痛苦了我們才能真正的學(xué)會(huì)。對(duì)于這一步,很重要的一點(diǎn)是,我們需要一個(gè)UML的工具,我知道的開(kāi)源的有StarUML,但好像很長(zhǎng)時(shí)間沒(méi)有維護(hù)了,這一工具,可能不能很好的遵循***的UML規(guī)范。至于商業(yè)軟件,那就多了,我比較喜歡用的比如VisualParadigmforUML就很不錯(cuò)。其它的還有來(lái)自IBM的RoseSoftwareModeler(是RationalRose的升級(jí)產(chǎn)品,其于Eclipse的),TelelogicTAU(現(xiàn)在也被IBM收購(gòu)了)。對(duì)了,RationalRose名氣比較的大,我記得還有一本書(shū)是專(zhuān)門(mén)講RationalRose的,但這個(gè)工具太垃圾了,建議不要用,可以用前面提到的升級(jí)產(chǎn)品RoseSoftwareModeler。對(duì)于工具,需要注意的是:一定要求這一工具遵循UML2.x規(guī)范。對(duì)于工具,需要注意的是工具只是工具,其跟本還是UML,一旦掌握了UML,其實(shí)什么工具用起來(lái)都一樣。
第三步是,由于我們對(duì)于UML已經(jīng)有了一定的基礎(chǔ),此時(shí),我們可以通過(guò)查看UML規(guī)范來(lái)解惑。UML的規(guī)范主要分為兩大部分:一步分是Infrastructure,即基礎(chǔ)結(jié)構(gòu);另一部分是Superstructure,即上層結(jié)構(gòu)。規(guī)范可以從www.OMG.com上下載。在這一步中,我們查看Superstructure就行了,對(duì)于我們所不知的內(nèi)容,我們可以查看圖所對(duì)應(yīng)的章節(jié),里面會(huì)解釋每一個(gè)概念的意思是什么。UML規(guī)范組織得還是很好的,很方便我們查看。另外,最為有用的是:每個(gè)個(gè)章節(jié),都會(huì)有一個(gè)Diagram的小節(jié),里面會(huì)給出一些例子,這有助于我們?nèi)W(xué)習(xí)。對(duì)了UML2.x***的變化除了對(duì)于圖的種類(lèi)有些變化外,還有一點(diǎn)就是給出了很多的例子,對(duì)于這一點(diǎn)OMG的解釋是“給出大量的例子將有利于大家學(xué)習(xí)UML”。
第四部是,如果你想進(jìn)一步的了解UML,可以系統(tǒng)性的看一下UML的兩部分規(guī)范。在閱讀規(guī)范時(shí),有一點(diǎn)需要注意的是,UML規(guī)范是用UML語(yǔ)言自己來(lái)描述自己的,所以看起來(lái)一開(kāi)始會(huì)有一點(diǎn)不習(xí)慣。如果對(duì)于UML沒(méi)有基本的了解,請(qǐng)不要去看規(guī)范,否則你會(huì)發(fā)現(xiàn)一個(gè)“雞和蛋的問(wèn)題”:我們是因?yàn)椴涣私釻ML才看UML規(guī)范的,可是UML規(guī)范卻用UML語(yǔ)言解釋UML規(guī)范。系統(tǒng)性的了解UML有利于我們掌握其它的以UML為基礎(chǔ)的建模語(yǔ)言,比如,SysUML就是取了UML當(dāng)中的一步分進(jìn)行擴(kuò)展的一個(gè)建模語(yǔ)言。
我相信,看過(guò)了UML的規(guī)范后你對(duì)于面向?qū)ο螽?dāng)中的一些東西會(huì)有一個(gè)更為清晰、準(zhǔn)確的理解,因?yàn)閁ML幾乎解釋了面向?qū)ο笾械乃行g(shù)語(yǔ),這一點(diǎn)很有意思!
【編輯推薦】
- 體驗(yàn)免費(fèi)UML建模工具
- 深度剖析九大UML視圖及其作用
- UML語(yǔ)言中五大視圖和九種圖形縱覽
- 軟件設(shè)計(jì)過(guò)程中面向?qū)ο骍ML技術(shù)如何使用
- 全面認(rèn)識(shí)UML類(lèi)圖元素