亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

XDE中模式驅動的設計與開發(二)

2019-11-18 13:50:38
字體:
來源:轉載
供稿:網友


  摘要:


  軟件模式,非凡是設計模式在現今的軟件開發中越來越重要。在許多的標準,工具,以及開發方法中都引入了模式的概念。本文介紹了如何在UML中對軟件模式進行建模,并結合具體的工具Rational XDE,對如何定義,如何應用模式作了具體地介紹,并指出了一些相關的問題。

  第二部分:XDE中的模式機制

  1 概述

  在前一期的系列文章中,我們對模式,非凡是設計模式在UML中的建模方法作了簡要地,理論上的介紹。現在該要進行實踐了?,F在支持模式建模并能夠基于模式進行應用程序開發的工具并不是很多。Rational XDE是其中最為聞名的一個,并且確實提供了極為優秀的功能。

  XDE的java版有兩種,一種是基于Eclipse內核的獨立運行版本(目前只支持Eclipse1.0)。另為一個是集成在WASD中的,作為WASD的一個插件同其以其運行(目前只支持WASD 4.0)。實際上WASD使用的就是Eclipse的內核,所以,這兩者在功能上(甚至外觀上)都沒有多大的區別。現在Rational已經被IBM所合并,所以有足夠的理由可以相信,在未來的WSAD中,XDE的功能會被更加完美的整合到其中。

  XDE最大的賣點有兩個,一個是分析設計同代碼編寫在是在同一個IDE中完成的,并可以進行正向-逆向工程,完美的實現迭代開發中所需要的模型-代碼的映射。另外一個就是這篇文章的主題:模式的定義和應用。你不僅可以使用XDE中預定義好了的23個經典的GoF設計模式,還可以自己定義模式,在開發中應用它們,或者導出供其他人使用。

  模式機制是XDE中實現重用的核心技術。你可以通過這個機制來實現模型元素和其它制品的重用。它提供了Model-to-Model和Model-to-Code的變換功能。這使得你能夠將一個涉及的模型作為來幫助一個特定的設計。它還是得你能夠將一個模式中的元素內容合并到已存的設計模型中。 2 XDE中的模式描述

  在XDE中,模式的描述基本上遵循了UML所定義的參數化協作標準。但是,由于UML中定義的只是如何來對模式建模,而對如何定義模式,應用模式,以及具體的代碼生成并沒有過多涉及。因而,XDE在UML的基礎上,作了一些合理的擴展。

  首先,我們來看一看Asset的概念。一個Asset是一些軟件制品的集合,它們被組織在一起以期能夠解決某一個問題。Asset能夠通過其定義的可變點(Variability Point)來進行擴展,在進行Asset重用的時候,開發者需要對這些可變點提供具體的內容來充實Asset,以完成Asset的重用。

XDE中模式驅動的設計與開發(二)(圖一)

  Rational現在推崇一種Asset Based Development過程方法,來作為其對RUP的一個補充,Asset就是其要害。這兒并不打算對Asset和Asset Based Development作過多地論述,那已經偏離了這篇文章的主題。從模式這個范疇而言,你可以簡單的把Asset看作是模式的定義,描述及其具體的實現。

  在XDE中, Asset表示為一個構造型為<<Asset>>的包。被申明為<<Asset>>的包可以被導出以利于在不同的開發者,甚至不同的工具中重用,只要它們都遵循Asset的規范Reusable Asset Specification。

  模式是一種Asset,但是Asset并不一定是模式。一個模型可以被包裝在一個Asset中,而其中并不帶有任何的模式描述。XDE能夠處理這兩種可重用項目。在XDE中,模式表示為包含在一個<<Asset>>包中的,帶有模板參數的合作圖。有很多種方法可以創建一個<<Asset>>包,但需要注重的是,創建一個UML的包并手工地將其版型設置為<<Asset>>并不會將這個包注冊為模式。

  在XDE中,<<Asset>>包可以被導出為一個.ras文件。一個.ras文件實際上就是一個zip文件,不過它有著自己的內容結構,這和J2EE中的.war文件很類似。它使用了rasset.xml和resource.xml這兩個xml文件來提供對這個壓縮文檔的描述。RASAsset.xsd文件是RAS的XML Schema,定義rasset.xml和resource.xml這兩個文檔的內容格式和含義。其它的文件是模型和文檔制品。

  在XDE中,模式由如下的一些部分組成:

   Asset

  在一個模式的底部是一個版型為<<Asset>>的包。模式中涉及到的所有內容都包含在這個包中,它也是用來導出符合RAS規范的可重用模式的邏輯單元(實際的物理封裝單元可是一個包,也可以是一個模型)。模式也可以不存在于Asset包中,但是因為模式的創建目標,就是希望能夠通過RAS規范來進行重用的,所以并不推薦使用這種方法。

   模板協作(Template Collaboration)

  在模式Asset中就是template collaboration,它是模式的核心。幾乎模式所涉及的所有內容都定義在其中。模版參數的屬性可以通過Pattern EXPlorer來查看。

   模板參數(Template Parameters)

  一個模板協作包含有一個或者多個模板參數,每一個定義一個特定的模式輸入。例如,假如你想有一個名為MyClassInput的參數,你可以使用那個名字創建一個模板參數。

   類型元素(Type Element)

  每一個模板參數都有一個類型,通過其Type屬性來定義。例如,假如模板參數的類型是class,那么這個模板參數就只接受類作為其參數值。這同在定義一個函數的參數時,需要指定其參數的類型(比如int)是一樣的。

   基礎上下文(Root Context)

  一個模式還有一個基礎上下文,在創建模式時所引入的其它元素被組織在這個地方。這些元素通常都會被直接創建,需要很少或者根本不需要參數來創建它們。比如在一個模式中會被用到的一個支撐類。缺省情況下,基礎上下文就是Asset包。你可以在Pattern Explorer中將其切換到其它的包中。

  實際上在模式所在的Asset包中,可以存在任何類型的元素,比如描述模式結構的類圖,描述模式中參與者之間的交互的順序圖,等等,都可以被放在基礎上下文中,在模式被擴展的時候一起被復制到擴展點處。

  為了提供對模型的可視化開發和表示,XDE在Eclipse的基礎上,添加了新的Model透視圖(Perspective)。實際上所有模型相關的內容,不僅僅是模式,都是在這個透視圖中實現的。而對模式,除了所有模型公用的Model Explorer外,還有一個Pattern Explorer和Pattern PRoperty視圖來提供對模式的定義和描述。對這些界面的使用都還比較簡單,要害的是要搞清楚那些屬性,設置值是來做什么的。除了上面的那些標準的Eclipse圖形元素外,XDE中還引入了Pattern Wizard來幫助你完成模式的應用。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲一区二区久久久久久久| 97婷婷涩涩精品一区| 亚洲国产精品久久久久久| 亚洲欧美激情视频| 欧美精品生活片| 欧美精品www| 久久久久久亚洲| 日韩av中文在线| 亚洲图片欧美日产| 亚洲国产成人一区| 超碰精品一区二区三区乱码| 欧美亚洲午夜视频在线观看| 久久久噜久噜久久综合| 一本色道久久综合狠狠躁篇的优点| 欧美激情久久久久久| 在线亚洲欧美视频| 欧美电影免费播放| 亚洲人成啪啪网站| 午夜精品一区二区三区视频免费看| 精品亚洲精品福利线在观看| 国产精品女主播视频| 国产精品www网站| 欧洲精品毛片网站| 亚洲高清一二三区| 4k岛国日韩精品**专区| 国产欧美日韩中文字幕| 亚洲成人久久久| 亚洲а∨天堂久久精品喷水| 亚洲天堂男人天堂女人天堂| 亚洲国产精品高清久久久| 国产精品美女在线| 亚洲第一国产精品| 美女国内精品自产拍在线播放| 精品国产一区二区三区四区在线观看| 亚洲图片欧美日产| 亚洲免费视频一区二区| 欧美高清第一页| 91精品国产色综合久久不卡98口| 色多多国产成人永久免费网站| 精品久久久久久亚洲精品| 久久久久久久电影一区| 欧美日韩爱爱视频| 久久91亚洲精品中文字幕奶水| 欧美日韩在线观看视频小说| 91av在线免费观看视频| 日韩大片在线观看视频| 欧美性猛交xxxxx水多| 精品少妇v888av| 亚洲精品二三区| 亚洲欧洲视频在线| 日韩中文字幕网站| 欧美激情视频免费观看| 久久综合伊人77777尤物| 欧美极品少妇xxxxx| 伊是香蕉大人久久| 操人视频在线观看欧美| 久操成人在线视频| 国产精品亚洲片夜色在线| 欧美电影免费在线观看| 欧美一区二区三区四区在线| 久久久999国产| 欧美激情久久久| 中文字幕亚洲一区在线观看| 精品无人区太爽高潮在线播放| 久久亚洲综合国产精品99麻豆精品福利| 高清欧美一区二区三区| 美女少妇精品视频| 亚洲理论电影网| 久久国产一区二区三区| 色妞色视频一区二区三区四区| 精品国产依人香蕉在线精品| 国产国语刺激对白av不卡| 欧美亚洲另类视频| 日韩在线中文字| 久久久精品久久久久| 日韩精品极品在线观看播放免费视频| 久久99精品国产99久久6尤物| 亚洲欧美日韩中文视频| 久久视频在线免费观看| 51久久精品夜色国产麻豆| 亚洲美女在线视频| 亚洲免费视频观看| 97视频在线免费观看| 欧美精品激情视频| 日韩极品精品视频免费观看| 亚洲精品视频在线播放| 精品国产美女在线| 97超级碰在线看视频免费在线看| 奇门遁甲1982国语版免费观看高清| 国产久一一精品| 欧美激情一区二区三区在线视频观看| 日韩欧美成人网| 亚洲毛片在线观看| 精品久久久一区二区| 91亚洲国产成人久久精品网站| 国产午夜精品一区二区三区| 国产精品欧美亚洲777777| 国产精品视频播放| 在线丨暗呦小u女国产精品| 91高清视频在线免费观看| 日韩av最新在线观看| 久久五月情影视| 日韩在线视频观看| 亚洲国产日韩欧美在线动漫| 成人免费高清完整版在线观看| 国产精品亚发布| 97人洗澡人人免费公开视频碰碰碰| 在线视频日本亚洲性| 亚洲一区第一页| 国内成人精品视频| 日本精品免费一区二区三区| 91视频国产一区| 国产亚洲人成a一在线v站| 欧美猛男性生活免费| 在线视频一区二区| 精品视频偷偷看在线观看| 国产欧美一区二区| 久久久久女教师免费一区| 国产美女91呻吟求| 亚洲欧洲xxxx| 日韩福利伦理影院免费| 精品久久久中文| 欧美日韩午夜激情| 精品亚洲男同gayvideo网站| 国产美女精彩久久| 国产精品天天狠天天看| 亚洲男女性事视频| 国产精品视频导航| 日本aⅴ大伊香蕉精品视频| 日韩国产精品亚洲а∨天堂免| 亚洲男人7777| 欧美日韩国产精品一区二区三区四区| 国产又爽又黄的激情精品视频| 91精品综合视频| 欧美富婆性猛交| 91精品久久久久久久久久另类| 亚洲人成网7777777国产| 奇米四色中文综合久久| 国产99视频在线观看| 欧美视频一二三| 日韩在线观看视频免费| 国产婷婷成人久久av免费高清| 午夜剧场成人观在线视频免费观看| 亚洲人成电影网| 狠狠躁天天躁日日躁欧美| 日韩美女在线看| 日本久久久久亚洲中字幕| 91精品国产色综合久久不卡98口| 8x拔播拔播x8国产精品| 狠狠躁18三区二区一区| 91精品国产自产在线老师啪| 97**国产露脸精品国产| 亚洲国产另类 国产精品国产免费| 欧美在线播放视频| 欧美黑人性生活视频| 欧美亚洲成人精品| 国内外成人免费激情在线视频| 欧美国产亚洲精品久久久8v| 奇门遁甲1982国语版免费观看高清| 亚洲丝袜av一区| 国产成人精品久久二区二区91| 国产成人亚洲综合91精品| 国产欧美精品一区二区| 国产精品自产拍在线观|