hhh

          常用鏈接

          統(tǒng)計

          最新評論

          Swing 的MVC

            說到MVC,大家都知道他是構(gòu)建GUI的有力模型。不過MVC本身比較抽象和寬泛,所以對于它的實現(xiàn)有很多。
               swing對于MVC的實現(xiàn)用一句話來說就是:一個GUI組件對應著一個MVC體系。
               在這個體系當中JComponent這樣的組件就扮演者MVC中的C,那拿JTable來說,MVC 就是 TableModel JTable TableUI.
               這種將MVC幾乎實施到每一個GUI元素的設(shè)計相當?shù)撵`活.對于swing 的MVC還有一個重要的特點就是它對于model 作了進一步的區(qū)分,那就是真正表達程序數(shù)據(jù)的model,和僅僅表達界面狀態(tài)的model.還拿JTable 來說就是: TableModel 與 TableColumnModel.
               在很多地方看到都說swing的這種MVC的劃分多被科學家欣賞,這我就不能茍同了,我是普通人,不過我也很欣賞.swing高雅而又不失實用.
               當然也有人會說盡管swing的MVC很精彩,不過通常我們程序中model都不是僅僅對應在一個GUI元素上,甚至不能確定要對應在哪些GUI元素上.
               定義這樣的類通常仍然很死:
               class MyModel implements TableModel,ListModel{
              
               }
              
               我覺得對于swing的設(shè)計沒有什么錯,它為每一個組件期待的model定義了相應的接口.但是我們程序當中的model又希望更獨立于GUI.
               為了達到兩全其美,到可以使用Eclipse里面的IAdaptable
              機制.讓你的model具有 IAdaptable能力,這樣你就可以將它隨便適配到哪個swing model 上.如此的組合真是從頭到腳的靈活性.
               還有swing的這種MVC設(shè)計也促成了swing的可插拔外觀特性.

          posted on 2006-10-17 17:42 hhh 閱讀(1100) 評論(1)  編輯  收藏

          評論

          # re: Swing 的MVC 2006-10-18 14:27 123bingbing

          增開7群,號碼 30440732
          8群 30756649
          9群 30178567
          10群 28694497

          我們的qq群:15096318 學習程序的都可以來  回復  更多評論   


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 连城县| 汶川县| 嘉峪关市| 吉木乃县| 博湖县| 滦平县| 六枝特区| 司法| 扶余县| 呼伦贝尔市| 淮安市| 凌海市| 鄂伦春自治旗| 彭州市| 丰县| 图木舒克市| 文山县| 上饶县| 加查县| 确山县| 肥乡县| 高安市| 花莲县| 靖宇县| 全南县| 色达县| 太仆寺旗| 剑阁县| 博客| 正定县| 德化县| 盐边县| 翁源县| 皋兰县| 凉城县| 乌鲁木齐县| 离岛区| 靖西县| 澄迈县| 新昌县| 佳木斯市|