天天看點

用star uml做java代碼的反向工程

StarUML對java做逆向工程有個限制:隻能逆向jdk1.4及以下環境下寫出來的代碼。JDK1.5中的标記、泛型等都不支援,因而也逆向不了。

解決辦法是使用别的工具導出,比如ArgoUML。我用這個東東逆向了我們的項目,然後再将uml導入star uml中。是不是很欠……

ArgoUML做逆向也有問題。各種莫名其妙的命名等等。不過不跑題了。下面是star uml的逆向方法。

28.          逆向工程 

StarUML還可以從現有的Java代碼建立一個類圖,這被稱為“reverse engineering”,當你想從現有的代碼生成圖表,或者你修改了SU生成的代碼,并且想在圖表中反應出來的時候,逆向工程功能就非常有用了。通過圖表或者DrJava這樣的文本編輯器去反複工作的過程,稱作“round-trip engineering”。這也是面向對象變成中的一個基本過程。 

l        到主菜單欄中選擇“Tools/Java/Reverse Engineer...”,可以将現有的代碼逆向工程。 

l        選擇Java代碼所在的目錄,并點選“Add”或“Add All”按鈕,将它們包括在逆向工程過程中,然後單擊“Next” 。 

l        選擇你想将類加入的子產品,這裡可能是“Model1”,然後“Next”。 

l        在Option Setup裡面: 

n        确認“public”,“package”,“protected”和“private”是選中的(這是預設設定)。

n        同樣,在預設情況下,單選按鈕“Create the field to the Attribute”也是選中的。 

n        除非你想SU建立其他東西,例如布局很糟糕的包含所有類的圖表,不要選中“Create Overview Diagram”框。

n        當你對選項做了檢查後,點選“Run”。

n        SU will now import the classes in the selected files into your model.   Click "Finish" to exit the dialog when it is complete.蘇現在進口班,在被標明的檔案到你需要的産品型号,點選"完成"退出對話框時,就完成了。 

l        SU會向你的子產品添加導入的類,但不是你的圖表。為了将它添加到您的圖,隻需要簡單地從Model Explorer拖動它們即可

本文轉自 斯然在天邊 51CTO部落格,原文連結:http://blog.51cto.com/winters1224/797899,如需轉載請自行聯系原作者