国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
簡述怎樣用argouml把學習日記的源代碼反向生成類圖 - 日志 - littlebat ...

簡述怎樣用argouml把學習日記的源代碼反向生成類圖

已有 289 次閱讀  2006-10-17 22:02   標簽學習日記  源碼 
這里以學習日記的learndiaryV0.9.0.4為例,結(jié)合最新版的ArgoUML0.22簡述一下怎么樣從學習日記源代碼反向生成類圖。其它環(huán)境為:操作系統(tǒng):redhat linux9.0,jdk1.4.2_12-b03(最新的jdk6在ArgoUML0.22下工作起來據(jù)我使用好像有點問題)。

1、選擇檔案->匯入原始碼:



2、在出現(xiàn)的“匯入原始碼...”瀏覽對話框中選定源代碼頂層目錄:./learndiary/src/com:



3、在出現(xiàn)的“setup the import classpath”對話框中手工逐個把學習日記涉及到的類庫加進去:

我加了的類庫有:
1)Tomcat5.0中common目錄下的:common/lib/servlet-api.jar
2)學習日記源碼涉及到的類庫,都在 ./learndiary/web/WEB-INF/lib下面,包括(保險起見,都加吧:)):
activation.jar          commons-logging.jar    jstl.jar                             standard.jar
antlr.jar               commons-validator.jar  log4j-1.2.12.jar                     struts-el.jar
commons-beanutils.jar   CVS                    mail.jar                             struts.jar
commons-digester.jar    jakarta-oro.jar        mysql-connector-java-3.1.12-bin.jar
commons-fileupload.jar  jdom.jar               rome-0.8.jar
(注:這是現(xiàn)在cvs庫中的最新版,里面有些類庫是learndiaryV0.9.0.4沒有的,你如果用learndiaryV0.9.0.4的話就可以不加。)
這個過程有點麻煩,也是argouml需要改進的地方,還有,加了第一個路徑后,你會發(fā)現(xiàn)對話框跑到主界面后面去了,你加下一個的時候需要在任務(wù)欄上的相應(yīng)圖標上點一下才能使它成為當前對話框繼續(xù)添加classpath。

4、把classpath添加完后,點擊OK,你就可以把源代碼反向成類圖了,這個過程可能要花幾分鐘,可要耐心點喲:)



這樣,完成反向工程了。但是,因為argouml現(xiàn)在還在開發(fā)中,還沒有達到一個成熟的V1.0版,據(jù)我的經(jīng)驗,反向的類圖如果再正向生成代碼是通不過編譯的,比如,在類com.learndiary.website.util.Util.java中
反向后的類文件頭部為:

package com.learndiary.website.util;

import byte[];
import String[];


而真正的原始文件頭部為:

package com.learndiary.website.util;

import java.security.MessageDigest;
import java.util.Random;


這顯然是不對的。但是,其它的絕大多數(shù)類是正確的。所以我認為,ArgoUML現(xiàn)在作為一個uml基礎(chǔ)知識的學習工具和一些不需要雙向生成類圖和類的簡單應(yīng)用中可用。也就是說,我認為ArgoUML還不是一個可用的生產(chǎn)版本!

下面征對一個朋友的提問“servlet和struts的包是如何導(dǎo)入到ArgoUML中”來說一下怎樣單獨把這些類庫反向工程成類圖。
1、同上面的第1步同;

2、在同樣的“匯入原始碼...”瀏覽對話框中的“select language for import”中選擇“java from classes” :



3、在出現(xiàn)的“匯入原始碼...”瀏覽對話框中選定你要反向工程的類庫,比如下面的struts.jar:


4、在出現(xiàn)的“setup the import classpath”對話框中手工逐個把編譯這個類庫涉及到的其它類庫加進去,因為我不清楚struts.jar都需要依賴什么其它類庫,所以把Struts的lib目錄下的所有jar文件都加進去了,外加Tomcat5.0下面的那個:common/lib/servlet-api.jar(我也不知道是不是該用J2EE中的servlet相關(guān)的那個類庫?或者用這個就行了?)

因為,我對UML的應(yīng)用僅限于非?;A(chǔ)的類分析和活動分析,用于在后來加入的部分模塊的設(shè)計中理清思路。我覺得對我來說ArgoUML已經(jīng)夠用了。而且,我的使用過程中也有一些肯定不正規(guī)的甚至錯誤的UML應(yīng)用,還希望看到的朋友能夠指點一二。我的電子郵件為:mdx-xx@tom.com,你最好是在網(wǎng)上給我留言。謝謝。


發(fā)表評論 評論 (3 個評論)

  • littlebat 2006-10-19 23:34
    上面我說:
    也就是說,我認為ArgoUML還不是一個可用的生產(chǎn)版本!


    實際上這個說法不當,真有人用ArgoUML作真正的商業(yè)應(yīng)用。下面是我大概1年多兩年前在argouml的用戶郵件列表中得到的一個argouml模型局部(也只有局部,別人不會把整個商業(yè)建模的成果拿出來分享吧,這個模型局部好像是他在回復(fù)某位用戶對argouml用于實際生產(chǎn)中的可能性表示懷疑的回答吧),明顯可以看出來是用于商業(yè)正式應(yīng)用的。后面是它的建模圖片和它的argouml模型。
    而且,ArgoUML用的是非常寬松的開源協(xié)議BSD協(xié)議,聽說商業(yè)應(yīng)用都是完全免費的喲(應(yīng)該是吧,具體還沒有詳細研究:))
    我會繼續(xù)使用ArgoUML的,別的不說,就是沖在他們堅持了10年不間斷的前進的那種精神上也要使用和支持他們。況且,我用的完全是UML中最基本的一些概念,主要是用來理清自己的設(shè)計思路的,argouml的表達能力對我來說應(yīng)該綽綽有余了吧。

    附圖:

    1、類圖:



    2、頁面導(dǎo)航設(shè)計圖:



    3、argouml建模文件:

    附件:filmLibrary.zargo.zip,11897 bytes
  • anonymous 2007-02-12 23:35

    剛看你的挺激動,仔細一看,反的
  • littlebat 2007-02-13 16:39
    可以呀,而且不止是類圖,整個UML模型都可以導(dǎo)出成XMI文件(XML Metadata Interchange(XML 元數(shù)據(jù)交換))。應(yīng)該說大多數(shù)UML建模工具都提供了這個模型導(dǎo)出成XMI文件的功能。

    在ArgoUML0.22中的方法是在“檔案”菜單(左起第一個菜單)中選擇“Export as XMI...”即可。

    另外,分享兩篇關(guān)于UML和XMI的文章:

    XMI 與 UML 合力推動產(chǎn)品開發(fā): http://www-128.ibm.com/developerworks/cn/xml/x-xmi/index.html

    使用 XML: UML、XMI 和代碼生成,第 1 部分: http://www-128.ibm.com/developerworks/cn/xml/x-wxxm23/index.html
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
struts2.23 需要 jar 類 包
Struts2 實現(xiàn)Ajax所需要的jar包
struts2.2.1基礎(chǔ)環(huán)境搭建必須的jar包
struts2 :Unable to load configuration. ……stru...
Struts2項目環(huán)境配置
struts1.x完整實例
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服