版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第11章 VC+的Rose雙向工程,Rational Rose 2003基礎(chǔ)教程 配套電子教案,內(nèi) 容,Rose VC+的正向工程 代碼生成屬性 Code Update Tool與代碼生成 生成的代碼內(nèi)容 VC+的逆向工程,步驟 1.檢查模型; 2.創(chuàng)建構(gòu)件,在構(gòu)件規(guī)范窗口的Language下拉列表框中選擇VC+,并將構(gòu)件映射到對應(yīng)的VC項目; 3.將類映射到構(gòu)件; 4.設(shè)置代碼生成屬性; 5.右單擊要生成代碼的構(gòu)件,選擇Update Code,或者單擊ToolsVC+Update Code,激活Code Update Tool; 6. 按照Code Update Tool提示操作。,1 Ro
2、se VC+的正向工程,2 代碼生成屬性,設(shè)置代碼生成屬性的途徑 VC+語言屬性窗口:設(shè)置VC+語言屬性 VC+屬性對話框(Properties Dialog):為新建的模型或當(dāng)前模型設(shè)置默認(rèn)的VC+語言屬性 構(gòu)件屬性對話框:設(shè)定應(yīng)用于構(gòu)件所要實(shí)現(xiàn)的類的模型屬性 Model Assistant工具:精確設(shè)置模型中的類與代碼之間的對應(yīng)關(guān)系 模型元素的規(guī)范窗口,2 代碼生成屬性,2.1 VC+語言屬性窗口 類的屬性 類屬性的屬性 類操作的屬性 依賴關(guān)系(Dependency) 角色(Role) 包的屬性(Class Category) 構(gòu)件的屬性(Module Specification) 項目屬
3、性(Project),2 代碼生成屬性,2.2 VC+屬性對話框 Code Update標(biāo)簽 Generate Model ID:生成模型ID Generate Documentation:信息作為注釋添加到代碼中 Generate #include Statements:為頭文件生成#include語句 Apply Pattern on Code Generation:生成代碼時是否選中Class Operations標(biāo)簽和Accessors標(biāo)簽中的原型 Generate Debug Operations for MFC Classes:為MFC類Cobject的派生類生成DUMP和Asse
4、rtValid成員函數(shù) Create Backup Files:如果選中該選項,則在對源代碼文件進(jìn)行修改之前,在備份區(qū)域生成該文件的備份 Support CodeName:為每個模型元素指定與模型中不相同的名字,2 代碼生成屬性,2.2 VC+屬性對話框 Model Update標(biāo)簽 Create Overview Diagrams:自動為每個逆向工程的構(gòu)件創(chuàng)建一張綜合圖 Default Package:新模型元素所在包的名字 Attribute Types:首次逆向工程時應(yīng)該作為屬性(而不是角色)進(jìn)行建模的VC+屬性類型,2 代碼生成屬性,2.2 VC+屬性對話框 Containers標(biāo)簽
5、列出了在Model AssistantRole標(biāo)簽中Implementation下拉列表框可選用的類。在默認(rèn)的情況下,列表中提供的是最常用MFC容器類。也可以將用戶自定義的容器類添加到列表中。右邊的Add和Remove按鈕用于添加和刪除列表中的某個(或某些)容器類。 要修改其中的容器類,右單擊要改動的類,在快捷菜單中選中Edit進(jìn)行編輯,2 代碼生成屬性,2.2 VC+屬性對話框 Class Operations標(biāo)簽 類操作的代碼生成與否還依賴于Code Update中的Apply Pattern on Code Generation選項。左邊選中的成員函數(shù)只在第一次代碼生成過程中生成。 Mo
6、del Assistant將用該列表控制所能加入類的操作,2 代碼生成屬性,2.2 VC+屬性對話框 Accessors標(biāo)簽 Accessor Operations:訪問函數(shù)(操作)。每個訪問函數(shù)的原型由模型中角色和屬性的類型決定 Accessor Body:訪問操作的函數(shù)體。,2 代碼生成屬性,2.3 構(gòu)件屬性對話框 General標(biāo)簽 Workspace File(Optional):VC+項目的工作空間和項目文件的名稱和路徑 Workspace File:VC+項目工作空間文件的文件名和路徑 Project File:VC+項目文件的文件名和路徑,2 代碼生成屬性,2.3 構(gòu)件屬性對話框
7、 Internal Map(和External Map)標(biāo)簽 Location:控制在何處定義#include語句,有三種選擇: Auto:根據(jù)類型依賴規(guī)則決定寫入頭文件或?qū)崿F(xiàn)文件 Header:總是寫入頭文件中 Source:總是寫入實(shí)現(xiàn)文件中,2 代碼生成屬性,2.3 構(gòu)件屬性對話框 Includes標(biāo)簽 Initial Source Includes:寫入類實(shí)現(xiàn)文件的#include語句中的文件名。如果有多個包含文件,則每個文件名占一行。 Initial Header Includes:寫入類頭文件的#include語句中的文件名,每個文件名各占一行。,2 代碼生成屬性,2.3 構(gòu)件屬性
8、對話框 COM標(biāo)簽 Update ATL Artifacts:控制是否為服務(wù)器端簡單的ATL對象生成代碼 Use Smart Pointersfor Interface Associations:設(shè)定是否要在雙向工程中使用VC+的 Smart Pointer特性。 Generate #import statements:控制是否為服務(wù)器端簡單的ATL對象生成#import語句,2 代碼生成屬性,2.3 構(gòu)件屬性對話框 Copyright標(biāo)簽 添加構(gòu)件的版權(quán)信息,默認(rèn)的值為“Copyright (C) 1991 - 1999 Rational Software Corporation”。,2 代
9、碼生成屬性,2.4 Model Assistant工具 Model Assistant是一個功能強(qiáng)大的工具,可以用來設(shè)定類以下層次的模型元素(包括類、操作、屬性、關(guān)聯(lián)等)的代碼生成屬性,精確定制生成的代碼框架。利用該工具可以提高代碼的準(zhǔn)確性和簡潔性。 啟動Model Assistant工具: 1.右單擊瀏覽器或類圖中的類; 2.選擇Model Assistant;,2 代碼生成屬性,2.4 Model Assistant工具 General樹視圖窗口及其標(biāo)簽 類及標(biāo)簽 Class Operations文件夾 Attributes 文件夾 Operations文件夾 Associations文件
10、夾,2 代碼生成屬性,2.4 Model Assistant工具 MFC樹視圖窗口及標(biāo)簽,3 Code Update Tool與代碼生成,Code Update Tool(代碼生成向?qū)? 簡化正向工程操作 : 可以同時生成和更新多個用不同語言實(shí)現(xiàn)的源代碼項目; 可以保證模型和源代碼之間的同步; 可以將類映射到構(gòu)件,方便操作; 可以在代碼生成向?qū)е写蜷_Model Assistant,設(shè)定類及其成員的代碼生成屬行,進(jìn)一步設(shè)置類與代碼之間的映射。 可以在將模型轉(zhuǎn)換成代碼之前,提前預(yù)覽類和類成員的代碼,及時發(fā)現(xiàn)模型中的錯誤并加以修改。,3 Code Update Tool與代碼生成,利用代碼生成向?qū)нM(jìn)
11、行正向工程的步驟: 第一步:啟動Code Update Tool ; 第二步:選擇要進(jìn)行代碼轉(zhuǎn)換的類、構(gòu)件以及實(shí)現(xiàn)語言: 將構(gòu)件映射到VC項目 ; 指定要實(shí)現(xiàn)的類及其成員; 第三步:生成代碼; 第四步:查看代碼生成結(jié)果。,4 生成的代碼內(nèi)容,4.1 概述 生成代碼時,模型中的構(gòu)件對應(yīng)于VC項目,模型中的類對應(yīng)于代碼中的類。模型中的其他細(xì)節(jié)(包括屬性、操作、關(guān)系、可見性等)在類的頭文件和實(shí)現(xiàn)文件中體現(xiàn) 4.2 頭文件(*.h)框架代碼 類聲明 類的數(shù)據(jù)成員和成員函數(shù)聲明 注釋 反映代碼生成屬性設(shè)置的代碼,4 生成的代碼內(nèi)容,4.3 實(shí)現(xiàn)文件(*.cpp)框架代碼 #include語句 成員函數(shù)和
12、數(shù)據(jù)成員的定義 反映代碼生成屬性設(shè)置的代碼,5 VC+的逆向工程,利用Rose VC+的Model Update Tool可以方便地進(jìn)行逆向工程的操作。在需要進(jìn)行逆向工程時,都需要使用Model Update Tool,包括: 1)根據(jù)VC+項目創(chuàng)建一個新的模型; 2)針對代碼的改動,更新一個已存在的模型; 3)往模型中添加一個外部VC+構(gòu)件。,5 VC+的逆向工程,逆向工程的步驟 1.編譯要轉(zhuǎn)換的VC+項目,確保源代碼文件中沒有任何語法錯誤; 2.如果是創(chuàng)建新的模型,則需要創(chuàng)建一個構(gòu)件,并設(shè)置構(gòu)件的實(shí)現(xiàn)語言為VC+;如果是更新模型,則可以省略這一步; 3.單擊Tools Visual C+ Update Model from Code,激活Model Update Tool,單擊Next,接著出現(xiàn)Select Components and Classes窗口,在該窗口中進(jìn)行構(gòu)件和類的選擇。 4.將VC+項目與模型中已有(或者新創(chuàng)建)的構(gòu)件關(guān)聯(lián);,5 VC+的逆向工程,逆向工程的步驟(續(xù)) 5.在要進(jìn)行逆向工程轉(zhuǎn)換的項目的各項名稱前面選中復(fù)選框,或者選擇構(gòu)件邊上的復(fù)選框,對整個項目進(jìn)行逆
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校檔案內(nèi)控制度
- 黨風(fēng)廉政與內(nèi)控制度
- 國資委關(guān)于印發(fā)內(nèi)控制度
- 2021年工會內(nèi)控制度
- 大連專員辦內(nèi)控制度
- 財政局開展內(nèi)控制度
- 集體經(jīng)濟(jì)內(nèi)控制度
- 交警大隊內(nèi)控制度
- 政府采購股內(nèi)控制度
- 企業(yè)集團(tuán)完善內(nèi)控制度
- 網(wǎng)絡(luò)內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)創(chuàng)新創(chuàng)業(yè)項目商業(yè)計劃書
- 企業(yè)安全決策方案模板(3篇)
- 肌肉骨骼康復(fù)學(xué):上肢損傷康復(fù)
- 有機(jī)磷農(nóng)藥中毒患者的護(hù)理
- 電力合規(guī)管理辦法
- 外墻清洗人員培訓(xùn)措施
- 2025高中思想政治課標(biāo)測試卷(及答案)
- 教育教學(xué)主題演講
- 特殊食品產(chǎn)業(yè)現(xiàn)狀與發(fā)展趨勢
- 心外科護(hù)理教學(xué)課件
- DB64∕680-2025 建筑工程安全管理規(guī)程
評論
0/150
提交評論