青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

我的玻璃盒子

[轉載]談談我理解的WPF團隊模型——在UI Designer與Developer之間

作者:周銀輝

原文出處:http://www.cnblogs.com/zhouyinhui/archive/2008/01/17/1042740.html

1,舊的模式已經不再適用

首先看看如果我們將舊的(.net3.o之前)模式直接引入到WPF中將是如何工作的。無論采用什么樣的溝通方式,我們需要Developer和UI Designer之間對軟件的功能達成共識,然后我們可以得到當前界面的大體Layout,OK,這個被驗證和確定以后,UI Designer會細化他的工作,提出一些她的一些新觀念,軟件UI風格,然后細化出一張張的效果圖(利用PhotoShop,PowerPoint等等)。接下來,Developer所要做的事情是:"照葫蘆畫瓢",照著UI Designer的效果圖,再Blend中將其模擬出來,以便形成可供程序使用的XAML。我們可以將這個過程稱之為Translate(將效果圖(PNG,Jpg)翻譯成XAML)。

這所帶來的問題:

(1)UI Designer的大部分"產出"的丟失,我們知道UI Designer除了告訴我們UI應該是怎樣來展現以外,其設計過程中的大部分作品被拋棄掉了(比如設計了很長時間才做得很漂亮得一個按鈕圖片),這是由于其產出不能直接用到我們的Project中(我們要得是XAML而不是PNG,Jpg)。到最后UI Designer那邊好像僅僅給我們提供了很多idea,而沒有實質性的東西輸出給我們以便用于我們的的Project.

(2)Developer這邊"費力不討好"。所謂"費力"指的是就大多數Developer而言本身就不擅長繪圖(即便您有Blend這類傻瓜式的工具),所以你很難得再Blend中將美工那邊提供的圖形完全模擬出來,所以,Designer那邊有意見了,您將人家美麗的藝術品轉化得一團糟糕了。即便某某很牛,模擬出來了。仍然"不討好",因為這是重復勞動,Developer再Blend中做得這部分工作事實上美工再Photoshop(或其它)中已經做過一次了。

一個可能得疑問是:為什么不讓UI Designer們再Expression Blend或Expression Design中工作呢?先說在Expression Blend中工作,除了培訓成本(我想這個培訓成本應該是相當高的)以外,就大多數UI Design團隊而言面臨的最嚴重的問題是:他們沒有軟件開發的觀念和知識,無法將他們融和到開發流程中來,如果他們負責Blend這塊的話,他們的一舉一動將直接影響軟件的性能和功能。比如他們不會按照Developer的觀念來合理組織資源,他們不會考慮XAML代碼對性能的影響,沒有模塊話的觀念,不會顧忌軟件的可維護性,穩定性。他們只會關心"這樣的界面簡直太漂亮太好用啦"。那么結果可想而知。再說Expression Design,事實上這是可行的,如果老板愿意出這部分培訓費用和培訓時間以及UI Designer樂于使用新工具的話。

2,新的模式有那些?

新的模式有好幾種,這取決于團隊中成員的技能和職責,但我比較推薦的有兩種。

(1)集成模式

從WPF角度看,團隊中除了UI Designer和Developer以外,我們再引入一個新的角色Integrator。首先看看他們各自的職責:UI Designer的職責保持不變,但我們稍稍改變一下她的"輸出",其除了輸出各種idea,布局圖,效果圖等等之外,其還將為我們輸出其它所有的圖形(比如一個漂亮的按鈕),但是以XAML的形式(這會用到一些插件或小工具,你可以在這里找到http://www.cnblogs.com/zhouyinhui/archive/2007/12/08/987928.html)。請注意,其輸出的是一些松散的XAML零部件,僅僅描述了圖形,沒有Style,Template,Trigger,Resource等概念。這樣UI Designer既不會改變慣有的工作方式,又可以專注與圖形和用戶體驗。而Developer的職責也保持不變,其專注于后臺邏輯,但放棄對界面的所有權,其是C#(或其它)的擁有者。而Integrator將致力于他們兩者之間的結合,其負責將從UI Designer那里得到的松散的XAML按照軟件開發者的觀念在Blend中組合成真正的項目中的零部件,比如其將負責Template,Style,Animation以及界面的模塊化,資源的組織,考慮其可維護性,穩定性,對性能的影響等等,其是XAML與Blend的擁有者。

這有一些明顯的好處:

(i) 沒讓成員做不擅長的事。在舊模式中,讓Developer在Blend中繪制出藝術品或者讓UI Designer按照開發者的觀念來管理Blend端顯然是強人所難,并且這也會分散他們的精力甚至帶來抱怨。但目前的模式將這些負擔轉移出去了。

(ii) 避免了重復勞動。舊模式中,Developer來"翻譯"UI Designer的成果的勞動是重復和痛苦的。而當前模式中圖形的XAML直接來自于UI Designer。我們需要做的僅僅是整合。

(iii) 避免了實際"翻譯"出來的UI與設計時的UI的不一致。兩者差距有多大完全取決于Developer的"翻譯"能力,但往往效果時不理想的,以至于UI Designer覺得自己的藝術品被扭曲了。

(iv) 有人專注于Blend端,那么軟件的表現層端質量將更高,更容易維護。

(2)收割模式

從WPF角度來看,這個模式中只有兩個角色: UI Designer與Developer。這個模式對UI Designer的要求較高,其需要能熟練使用Blend來創造一些成品供Developer"收割"。比如我們需要一個漂亮的按鈕,那么UI Desinger直接輸出給我們該按鈕的Style。其甚至可以輸出其它更復雜的東西,比如UserControl(不可能是CustomControl,因為他們不會寫程序邏輯,除非和Developer合作)。他們的工作是在解決方案中的某個輔助項目中完成了,而負責軟件的真正表現的Blend端由Developer來負責,因為這里需要考慮很多軟件開發的東西。

該模式同樣擁有集成模式的各種好處并且與集成模式相比,UI Designer更加融入到了項目開發過程中,但對UI Designer的要求較高。

其它一些建議:合理地整合Blend端,如果發現XAML文件過大就模塊化。保持UI項目始終能用Blend打開,否則將導致團隊中某些角色出局或工作起來很麻煩。別讓界面和邏輯耦合在一起,如果發現邏輯對界面元素引用過多,那么可能在Binding,Trigger,Resource等方面做得不夠好。另外,相比之下,我更推薦第一種模式,我在這種模式下工作了不短時間,Integrator是我的職責之一。

posted on 2008-01-17 23:03 深藍色系統 閱讀(375) 評論(0)  編輯 收藏 引用 所屬分類: 程序人生


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


導航

<2011年12月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

統計

常用鏈接

留言簿(75)

隨筆分類

隨筆檔案

文章分類

文章檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            韩国三级电影一区二区| 在线观看日韩www视频免费| 亚洲视频在线观看三级| 亚洲激情综合| 欧美另类一区| 亚洲欧美日韩一区二区| 欧美日韩亚洲一区二区三区在线观看 | 国产精品主播| 久久经典综合| 久久九九热免费视频| 亚洲国内精品在线| 亚洲国产精品成人一区二区| 欧美大片在线影院| 亚洲欧美成人在线| 欧美综合第一页| 亚洲欧洲一区| 亚洲免费综合| 亚洲高清精品中出| 在线综合视频| 亚洲电影免费观看高清完整版在线观看 | 欧美成人资源| 亚洲欧美日韩中文视频| 久久精品一区二区三区四区| 99国产精品久久久久久久久久| 亚洲天堂网站在线观看视频| 国语自产精品视频在线看| 亚洲黄色成人久久久| 国产精品wwwwww| 女人天堂亚洲aⅴ在线观看| 欧美视频免费| 欧美激情一级片一区二区| 国产精品区一区二区三| 亚洲风情在线资源站| 国产精品永久免费视频| 亚洲欧洲一区二区三区在线观看| 欧美视频一区二区三区在线观看| 久久偷看各类wc女厕嘘嘘偷窃| 欧美成人精品1314www| 久久国产一区二区| 欧美午夜在线一二页| 蜜臀99久久精品久久久久久软件| 欧美日韩亚洲激情| 亚洲国产99精品国自产| 国产一区日韩一区| 亚洲深夜福利| 一区二区三区视频在线观看| 久久一区二区三区四区| 久久国产欧美精品| 国产精品二区影院| 亚洲精品一区在线观看| 91久久午夜| 久热精品在线| 麻豆9191精品国产| 韩国成人精品a∨在线观看| 一本久久综合亚洲鲁鲁| 99精品免费视频| 欧美1级日本1级| 欧美波霸影院| 在线看片成人| 两个人的视频www国产精品| 久久久在线视频| 国产亚洲激情在线| 午夜精品99久久免费| 欧美在线观看日本一区| 国产精品嫩草99av在线| 亚洲视频一区二区在线观看 | 国产精品久久久久久亚洲调教| 亚洲国产精品va在线看黑人动漫| 亚洲国产成人久久综合| 久久先锋资源| 亚洲动漫精品| 一本久道久久久| 欧美日韩在线综合| 亚洲深夜福利视频| 欧美一区二区三区婷婷月色| 国产九区一区在线| 欧美一级理论片| 老司机成人在线视频| 亚洲成色999久久网站| 免费日韩精品中文字幕视频在线| 欧美激情一级片一区二区| 91久久久久久久久| 欧美日韩卡一卡二| 亚洲一区日韩| 久久久久亚洲综合| 亚洲国产乱码最新视频| 欧美日本亚洲韩国国产| 一区二区三区高清视频在线观看| 欧美一区二区视频免费观看| 黄色国产精品| 欧美激情综合网| 亚洲一区免费在线观看| 久久综合狠狠综合久久综合88| 在线观看欧美日韩| 欧美色视频日本高清在线观看| 亚洲免费伊人电影在线观看av| 久久综合色8888| 亚洲精品一区二区三区99| 国产精品国产三级国产专播品爱网| 亚洲欧美在线另类| 亚洲国产日韩一区| 欧美中文在线视频| 亚洲美女视频网| 国产午夜精品一区理论片飘花| 免费h精品视频在线播放| 一区二区三区日韩| 欧美高清不卡在线| 久久国产精品久久久| 亚洲精品自在久久| 国产午夜精品理论片a级大结局| 你懂的视频一区二区| 午夜免费日韩视频| 日韩一级大片| 欧美大片免费观看在线观看网站推荐| 亚洲欧美不卡| 日韩午夜精品视频| 在线电影院国产精品| 国产精品腿扒开做爽爽爽挤奶网站| 奶水喷射视频一区| 欧美一级精品大片| 亚洲小说区图片区| 亚洲韩日在线| 欧美成人dvd在线视频| 久久精品99国产精品| 亚洲夜晚福利在线观看| 亚洲精品视频在线观看网站| 黄色亚洲精品| 国外成人免费视频| 国产美女在线精品免费观看| 欧美日韩中文字幕| 欧美激情在线狂野欧美精品| 老鸭窝亚洲一区二区三区| 欧美中文日韩| 久久激情婷婷| 久久国产精品亚洲77777| 亚洲欧美成aⅴ人在线观看| 在线综合亚洲| 在线视频中文亚洲| 在线一区欧美| 亚洲视频免费观看| 亚洲图片欧洲图片av| 99精品视频一区二区三区| 日韩午夜av电影| 99精品国产99久久久久久福利| 亚洲精品美女免费| 亚洲免费成人av| 99精品视频免费全部在线| 日韩一区二区高清| 中文在线不卡| 亚洲尤物在线视频观看| 午夜视频精品| 久久精品国产77777蜜臀| 久久蜜桃资源一区二区老牛| 老巨人导航500精品| 免费视频一区二区三区在线观看| 美女国产一区| 欧美日韩国产首页在线观看| 国产精品xxx在线观看www| 国产精品一区二区你懂的| 国产一区二区三区高清| 在线日韩视频| 亚洲理论在线观看| 亚洲制服少妇| 久久亚洲春色中文字幕| 欧美激情第3页| 日韩一区二区精品视频| 亚洲欧美日韩在线高清直播| 久久久精品欧美丰满| 欧美成年视频| 国产精品高潮视频| 伊人狠狠色j香婷婷综合| 亚洲美女视频在线免费观看| 亚洲欧美在线看| 久久综合伊人77777麻豆| 亚洲国产91| 午夜久久久久久| 欧美ab在线视频| 国产精品一区在线播放| 亚洲国产色一区| 亚洲与欧洲av电影| 欧美**人妖| 亚洲在线视频观看| 欧美大片在线观看一区| 国产欧美日韩三区| 亚洲日本电影在线| 亚洲视频第一页| 香蕉久久a毛片| 欧美不卡在线视频| 欧美日韩在线一区| 精品白丝av| 午夜久久久久久| 欧美高清视频| 午夜精品福利一区二区三区av| 欧美成人精品1314www| 国产日韩欧美91| 亚洲一级免费视频| 欧美国产一区二区在线观看| 亚洲精品久久久久久一区二区| 欧美亚洲免费| 欧美日韩一区二区三区在线|