posts - 0, comments - 14, trackbacks - 0, articles - 7

          接口開發(fā)的感受(2006-12-7)

          Posted on 2006-12-07 11:50 lendo 閱讀(1437) 評論(4)  編輯  收藏

          最近,項目中負責接口開發(fā)的同事出了一個小問題。
          ????
          ???? 比如:系統(tǒng)A和系統(tǒng)B之間需要通過接口abInterface來通信和交換數(shù)據(jù),系統(tǒng)A中有一類數(shù)據(jù)為data-01,系統(tǒng)B中有一類數(shù)據(jù)為data-02,但實際上data-01和data-02對于業(yè)務而言是同一個含義,表達的是同樣的意思,那么如果直接將data-01類型的數(shù)據(jù)傳送給系統(tǒng)B,那么系統(tǒng)B就無法解釋其含義,目前我們系統(tǒng)的解決辦法是:

          ???? 在傳送數(shù)據(jù)的時候,由系統(tǒng)A將data-01型數(shù)據(jù)轉(zhuǎn)換成data-02型數(shù)據(jù),然后再傳送給接口。
          ????
          ???? 但這種方式是錯誤的,大家討論后得到了這樣的一個比喻:中國人和英國人進行交流,中間配了一個翻譯。正確的思路應該是,中國人將中文信息傳送給翻譯,翻譯聽懂以后,將信息翻譯成英語,再把英語信息傳送給英國人。在這其中,翻譯和中國人之間以及翻譯和英國人之間都是共用一套語言。
          ????
          ???? 目前接口出現(xiàn)的問題就是:中國人先將中文翻譯成英文,再把英文信息說給翻譯,翻譯再把英文信息一字不差地說給英國人,所以,翻譯在這里除了簡單傳送一下信息外,其他就什么也沒做。翻譯沒有將自己的職責進行到位,而中國人的事情卻超越了自己的職責,相當于中國人還做了半個翻譯的事情。

          ???? 對應于系統(tǒng)接口而言,系統(tǒng)A和abInterface之間的信息data-01是互相能理解的,系統(tǒng)B和abInterface之間的信息data-02也是互相能理解的,系統(tǒng)A和系統(tǒng)B之間的信息不應該交叉。

          ???? 結(jié)論:接口的雙方的信息是不互通的,接口和任意一方的信息格式應該遵循同一種規(guī)則,接口要做兩件事:一是轉(zhuǎn)換數(shù)據(jù)格式,二是傳輸?shù)谝徊浇?jīng)過轉(zhuǎn)換的傳送目標能夠理解的數(shù)據(jù)格式。

          Feedback

          # re: 接口開發(fā)的感受(2006-12-7)  回復  更多評論   

          2006-12-07 16:34 by BeanSoft
          不錯... 這樣的接口是無意義的, 濫用的接口. 接口一定要把所有的模塊需求都定義清楚才好, 然后用抽象類實現(xiàn)公用的部分...

          # re: 接口開發(fā)的感受(2006-12-7)  回復  更多評論   

          2006-12-08 09:28 by itVincent
          嗯...這樣的接口沒用....

          # re: 接口開發(fā)的感受(2006-12-7)  回復  更多評論   

          2006-12-09 17:02 by 壞男孩
          接口:::

          卡丁車: 接口加速();
          卡丁車G3:加速(){速度=236;};
          卡丁車飛碟:加速(){速度=260;};

          hoho,我的理解這是接口的意義啊

          最近喜歡上跑跑卡丁車了!

          壞男孩賴安!!!

          # re: 接口開發(fā)的感受(2006-12-7)  回復  更多評論   

          2006-12-10 11:46 by lendo
          呵呵。壞男孩,我們各自所理解的接口不一樣哈。

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


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 桐城市| 当阳市| 祥云县| 西乌珠穆沁旗| 扶风县| 独山县| 志丹县| 宁明县| 库伦旗| 莒南县| 连山| 巴彦淖尔市| 永昌县| 建德市| 孟津县| 河源市| 鄂伦春自治旗| 泸州市| 米易县| 清新县| 金川县| 仪陇县| 叙永县| 衡阳市| 苍梧县| 伊川县| 泰兴市| 保德县| 洛川县| 修武县| 二连浩特市| 芷江| 札达县| 宜章县| 佛教| 潍坊市| 西畴县| 土默特左旗| 水富县| 社会| 通榆县|