亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Flex開(kāi)發(fā)流程設(shè)計(jì)器的經(jīng)驗(yàn)之談(4)

系統(tǒng) 2126 0

在(3)中,簡(jiǎn)要介紹了整個(gè)Flex版設(shè)計(jì)器的整體架構(gòu),那么今天就進(jìn)入比較細(xì)粒度的Flex GEF的內(nèi)核看看。

既然名稱中有“GEF”,那么肯定會(huì)與Eclipse GEF的設(shè)計(jì)會(huì)有所類似,事實(shí)上,本身就是借鑒GEF的設(shè)計(jì)思想和對(duì)象概念模型,只是做了改造和簡(jiǎn)化。

如下圖所示。

Flex開(kāi)發(fā)流程設(shè)計(jì)器的經(jīng)驗(yàn)之談(4)

其最基本的核心在于“IModel、IEditPart、IFigure”,這構(gòu)成了MVC的核心對(duì)象模型。

IModel的變更會(huì)通知IEditPart這個(gè)控制器,由控制器刷新IFigure。—— 不過(guò)此處并沒(méi)有采用EMF那種對(duì)象結(jié)構(gòu):EMF在底層對(duì)Model的所有屬性變更都做了監(jiān)聽(tīng),任何變更都會(huì)引發(fā)Notifor操作,從而利用監(jiān)聽(tīng)器來(lái)處理notification。在我最初的設(shè)計(jì)中,原本也想這么操作的,不過(guò)后來(lái)摒棄這個(gè)思路。如果在底層再引入一個(gè)類似EMF的框架,會(huì)再引入大量的基類,無(wú)形中增大了最終flash文件的大小。所以,此處雖然也支持Notifor操作,但是都是“外圍顯示主動(dòng)通知Notifor”的方式,而且拋棄了Notification這一層。—— 這樣的結(jié)果就是,我在command中,并不是非常徹底的只操作Model,或多或少都會(huì)會(huì)顯示引發(fā)對(duì)EditPart的處理操作。(這是一個(gè)很“拖泥帶水”的實(shí)現(xiàn)方式,但是處理方式要簡(jiǎn)化很多,而且節(jié)省了很多底層代碼,縮減了flash文件)。

當(dāng)然,每一個(gè)Editor都會(huì)維持一個(gè)屬于其自己的EditDomain,用于記錄在當(dāng)前操作空間的一些對(duì)象,比如“commands”、“那些對(duì)象被選中”、“Figure或Model與EditPart的快速索引”等等。

另外,每個(gè)Editor都會(huì)由一個(gè)Viewer來(lái),定義當(dāng)前顯示方式。同時(shí),利用EditPartFactory、ModelFactory、FigureFactory來(lái)創(chuàng)建相應(yīng)對(duì)象。上層業(yè)務(wù)層真正需要實(shí)現(xiàn)不同的Factory(已經(jīng)包括相應(yīng)的model、editpart、figure),這樣就可以很容易快速實(shí)現(xiàn)不同“視圖展現(xiàn)模式”。—— 外圍大量的擴(kuò)展代碼都是在這個(gè)地方。

當(dāng)然,這里面有一個(gè)“Figure”概念。早在(1)中,就已經(jīng)簡(jiǎn)單提過(guò),F(xiàn)igure并不是Flex中的概念,只是用用于“聲明這是一個(gè)GEF中的圖形”而已。( 注:這個(gè)Figure的處理很有技巧性,處于商業(yè)產(chǎn)品的限制,我無(wú)法更多的在這里做詳細(xì)解釋,大家只能自己揣摩了

當(dāng)然,真正的Flex GEF內(nèi)核實(shí)現(xiàn)要比上面圖形中的展現(xiàn)復(fù)雜不少。但基本邏輯關(guān)系的核心已經(jīng)表示差不多了。

這部分內(nèi)容也只能“點(diǎn)到即止”,畢竟本身屬于商業(yè)產(chǎn)品范疇。

Flex開(kāi)發(fā)流程設(shè)計(jì)器的經(jīng)驗(yàn)之談(4)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 天天做爽夜夜做爽 | 日本不卡在线播放 | 久久精品国产精品亚洲20 | 亚洲国产精品日韩一线满 | 亚洲国产成人精品一区二区三区 | 亚洲精品久久片久久 | 日本一区二区三 | 亚洲你xx我xx网站 | 日日爽视频 | 日韩 欧美 中文 | 99视频全部免费 | 日韩精品一区二区三区在线观看l | 四虎在线最新永久免费 | 九九黄色大片 | 亚欧毛片 | 国产亚洲精品一区二区久久 | 亚洲欧美国产毛片在线 | 国产com| 免费男女网站 | 久久天天躁夜夜躁狠狠躁2015 | 欧美高清一区二区 | 亚洲综合精品一区二区三区中文 | 夜夜网站| 国产一级特黄特色aa毛片 | 婷婷中文在线 | 毛片小视频| 亚洲国产人成在线观看 | 亚洲精品美女久久久久 | 国产亚洲精品激情都市 | 26uuu亚洲| 九九精品久久久久久噜噜 | 国产香蕉尹人综合在线 | 日本一级毛片2021免费 | 色九九亚洲偷偷动态图 | 操白嫩美女 | 久久精品亚洲综合 | 中文久久| 久久精品国产亚洲沈樵 | 国产伦理一区二区三区 | 日韩欧国产精品一区综合无码 | 亚洲高清中文字幕一区二区三区 |