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

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)論
主站蜘蛛池模板: 久久国产精品亚洲77777 | 99热只有精品一区二区 | 毛片高清 | 黄色视屏在线免费观看 | 久久人人澡| 性欧美高清videosex | 亚洲欧美在线精品一区二区 | 国外成人免费视频 | 国产精品香蕉一区二区三区 | 99久久精品一区二区三区 | 亚洲va久久久久综合 | 老司机午夜精品视频 | 91青草视频| 久久99精品久久只有精品 | 久久澳门 | 久久ww精品w免费人成 | 亚洲视频在线观看免费视频 | 亚洲精品www久久久久久 | 香蕉国产一区二区 | 四虎影在永久地址在线观看 | 亚洲国产欧美一区二区欧美 | 国产人成午夜免视频网站 | 中文字幕天天躁夜夜狠狠综合 | 日本工番囗番全彩本子大全 | 九九热欧美 | 欧美另类综合 | 天海翼一区二区三区免费 | 亚洲精品综合一二三区在线 | 国产成人精品视频频 | 一级免费黄色毛片 | 99在线免费观看视频 | 77yyzz男人的天堂 | 亚洲香蕉网综合久久 | 亚洲激情网址 | 日韩欧美精品一区二区三区 | 欧美视频一二三区 | 国产欧美精品 | 亚洲精品乱码久久久久久蜜桃 | 免费在线成人网 | 日韩中文字幕在线亚洲一区 | 久草久草 |