記得選擇為每個目錄單獨建立包,也可以反向c語言工程的,記得c語言工程要選擇原型別為c,這樣反向出來才不會一直報錯。
2、接著我們開始開啟vs,如果原工程有sln檔案,直接開啟即可,如果沒有,則
整個工程匯入即可,接著就可以針對著ea反向工程的目錄乙個個反向源**
3、面對
ea自動化出來的很粗糙的原始碼模型,我們該怎麼處理呢。 我總結了幾個原則
原則1:類圖構建。 找出原型中個頭比較大的類,正常情況下他們就是這個package中的核心類,一般**不離十,然後正常的工程一般都是這種結構模式的
可以很明顯看出個頭比較大的類在類圖中的作用了,乙個package正常情況下核心類就是乙個到三個類左右,然後每個package之間的通訊也就是這些核心類的通訊而已,其他類都是為這些類輔助的,不看也罷。 是不是就化繁為簡啦,本來要看幾十個的,其實只要看最多2-3個就夠了,提綱挈領
2、設計模式構建。
我們老說乙個軟體的架構架構,其實目前我了解的原始碼來看,基本核心的架構就是那麼幾種,乙個是設計模式,乙個是mvc,如是而已。 mvc可以說是貫穿整個設計的至始至終,非常簡單,可以說都不需要畫出來,簡單說就是你在歸類的同時自然就會整理成mvc的模式,用爛了。 但是設計模式一般人在閱讀**的時候就沒有那麼容易分清了。但是實際中在小到乙個demo還是達到作業系統,設計模式也就是那麼幾種在使用。
單例模式
**模式
狀態機監聽者觀察者
最多就是加上面向元件程式設計和面向介面程式設計。沒有了,而這裡面用的最多最爛的,也是容易變得最複雜最不好理解的就是監聽者和觀察者、狀態機。可以簡而言之,乙個架構你畫出他的狀態機模式和監聽者觀察者模式,基本你就把他的框架看完了,就這麼簡單。理清**的結構無非就是如此
1、**有幾百萬行,程式是不可執行,程式即使可以執行,也不知道**是東**是西。
2、維護了乙個幾百萬行的**後,人家問你,他的整理架構和核心流程是怎麼樣的,然後你支支吾吾了半天,吐出一句:不太記得了。。。。回去還得繼續看**
PowerDesigner 的反向工程
有的時候要分析別人的資料庫 但看錶不能很好的體現業務邏輯 所以可以用powerdesigner的反向工程來解決 這裡用mysql 來舉例子,因為pd中沒有mysql的odbc,得用connection profiles來解決。新建乙個工作空間 資料庫 configure connections co...
mybatis的反向工程
工具 myeclipse,資料庫oracle,框架mybatis 1.mybatis的反向工程會比hibernate的反向工程麻煩一點。這裡需要乙個外掛程式myeclipse反向工程外掛程式及模版api.rar,裡面有詳細的模版和外掛程式安裝教程,下面是初始時候的包檢視 init.propertie...
uml 與軟體工程
其實寫完文件自己很模糊,大概了解每個文件重心以及它的目的。但至於類容很多不理解,以及為什麼寫這些類容真的很模糊!但學完uml和畫完圖之後,對軟工又多了點了解!就那拿個書本做比喻。軟工 10 14個 文件就相當於整個書本的 10 14個 章節,只有先把這這章節寫好和看懂後,才能畫出好的uml圖。uml...