<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    每日一得

    不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發
    最近關心的內容:SSH,seam,flex,敏捷,TDD
    本站的官方站點是:顛覆軟件

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      220 隨筆 :: 9 文章 :: 421 評論 :: 0 Trackbacks

    key words :面向接口編程

    面向對象設計里有一點大家已基本形成共識,就是面向接口編程,我想大多數人對這個是沒有什么覺得需要懷疑的。

    問題是在實際的項目開發中我們是怎么體現的呢? 難道就是每一個實現都提供一個接口就了事了?反過來說,你有時候有沒有覺得接口是多余的事? 又或者,你僅僅是覺得現在類似spring這樣的框架已習慣用接口這種方式而心存當然。

    設計模式解析里提到了面向對象設計考慮的幾個視角,一個是概念層,一個是規約層,一個是實現層。我如果沒有猜錯的話,實際上我們大多數人的眼睛一直是盯著實現層的,而這正是面向對象設計所極力避免的,即你不要在一開始就關注這些細節,你要關注的是規約(接口).

    對于實際項目開發來說,如果我們把實現的過程分為多個階段的話我們不妨這么劃分,第一階段,根據client端的需要去設計我們的規約(interface),在這個階段任何實現都沒有,所有的任務就是定義接口所需要的職責,以及所需要的一些po,vo;第二階段,實現前面定義的規約。而以前我是怎么做的呢? 我是交叉作的,即假模假樣的定義一個接口(其實我心里在想這個東西有屁用),然后定義了一個方法,然后就立即去實現這個方法,再然后我又定義一個方法,繼續去實現,我現在終于想通了,這樣好累,效率很低,最重要的是,這不屬于真正的設計。
    現在我是怎么做的呢?比如一個list.jsp里需要查詢,列表,然后看明細信息,然后增加信息,我會第一步在接口里定義完(這個過程會有整體設計的意識),毫不關心底層實現(數據庫、事務),我的目標就是"我想要這個功能,我想要那個功能",至于那個功能怎么實現在第一階段我認為那不是我的事情(盡管這個事情最終還是由我來做) .大家看這個過程和前面的過程有什么本質的不同呢? 就是分層的概念更加明顯,你的工作更有層次,每次都有先設計再實現的步驟,而前面那個過程很容易就讓你不知不覺地陷入純實現的陷阱中。

    一點感想,歡迎大家拍磚。

    posted on 2007-03-12 00:40 Alex 閱讀(12398) 評論(18)  編輯  收藏 所屬分類: java建模

    評論

    # re: 真正理解面向接口編程 2007-03-12 02:56 sinoly
    不管是面向什么編程都好,在不同的環境下,每一種方式都有自己的特點。
    這種環境包含項目組的也包含客戶方的還有公司管理方面的等等。。。
    需要在不斷的比較中確定。。。。
    就像Java/C/Ruby/PHP等等,比較語言的優劣都是沒有意義的。最重要的是實際情況分析!  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-03-12 20:03 azure
    接口,就是對接的端口,模塊與模塊之間約定建立的交通路線。  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-03-20 13:17 lemonxd
    覺得說的很對,我是個編程初學者,看了之后有很有體會。以前設計的時候總是想著實現,結果忽略了設計。所以……
      回復  更多評論
      

    # re: 真正理解面向接口編程 2007-03-29 16:37 wahaha
    講的有道理...
    不過在設計的時候很難不去想到實現的場景  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-04-30 18:02 我們走在JAVA的光明大道上
    LZ說的太有 同感了,
    剛開始就是為了有個接口而去搞個自認為多余的接口,然后馬上實現他,哈!今天突然對接口有很大感悟,搜索到LZ這文章,真是一大幸事!  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-05-24 14:47 hh-lux
    作者的意思是接口是使設計者和編程者分離吧。確實是這樣,只是當我們自己開發系統時,自己即是設計者,又是編程者,作者的想法是對的。  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-06-12 22:36 lxf
    @hh-lux
    意思是為了讓使用和實現分離.  回復  更多評論
      

    # re: 真正理解面向接口編程 2007-11-20 16:41 yicong
    很正確,尤其認同那句“(其實我心里在想這個東西有屁用)”,哈哈哈哈。
    我也經常這樣搞,然后就屁顛屁顛的去實現。哈哈哈哈  回復  更多評論
      

    # re: 真正理解面向接口編程 2008-05-15 10:42 孤鷹
    接口,就是一種規則,規定了我們在系統中應該實現的和必須實現的功能。  回復  更多評論
      

    # re: 真正理解面向接口編程 2008-06-14 10:21
    好,這樣做感覺更能去解決一些問題。不再那么盲目了  回復  更多評論
      

    # re: 真正理解面向接口編程[未登錄] 2009-02-18 17:15 呵呵
    好,確實不錯。用同感  回復  更多評論
      

    # re: 真正理解面向接口編程 2009-07-04 15:39 123
    一直以來都對面向接口編程理解的不夠,不知道什么是面向接口編程
    只知道接口是一種規范,延遲方法的實現
    要學習學習....  回復  更多評論
      

    # re: 真正理解面向接口編程 2009-07-22 21:24 嘻嘻哈哈
    隨著工業軟件的規模的越來越大, 同一個項目中參與的程序員越來越多。于是面臨管理難度,所以應當先把框架搭好,通過框架來規范項目實現的目標,就是面向接口編程的思想。  回復  更多評論
      

    # re: 真正理解面向接口編程 2009-08-04 17:06 Supporter
    感覺很正確,頂!!!  回復  更多評論
      

    # re: 真正理解面向接口編程 2010-11-05 14:11 kangdy
    很有同感啊。轉了。  回復  更多評論
      

    # re: 真正理解面向接口編程 2013-06-25 12:59 再進一點
    我發現總是先去想需要什么功能,這個功能怎么實現,然后需要怎么樣的接口,不知道這和lz的想法怎么靠近。  回復  更多評論
      

    # re: 真正理解面向接口編程 2013-07-26 14:18 OnTheRoad_Lee
    嗯,很認同LZ的看法,面向接口編程主要是讓我們的工作更有層次感,先有整體的設計(設計者),再有具體的實現(實現者),
    只是在天朝這樣的國度,我們挨踢民工是全能的,一條龍服務,既當設計者,又要當實現者(設計完之后,還是得你自己來實現)。
    目前還沒有體驗到接口設計的便利性也好,整體性也好,層次感也好,不過了解了,  回復  更多評論
      

    # re: 真正理解面向接口編程 2013-07-26 14:20 OnTheRoad_Lee
    這位站在更高層次說面向接口編程,很贊同,只是目前還沒有體會到,小公司@嘻嘻哈哈
      回復  更多評論
      

    主站蜘蛛池模板: 综合一区自拍亚洲综合图区| 在线观看午夜亚洲一区| 99久久免费国产香蕉麻豆| 久操视频在线免费观看| a级片在线免费看| 中文字幕免费在线看| 花蝴蝶免费视频在线观看高清版| 久久久久久噜噜精品免费直播| 国产美女视频免费观看的网站| 手机永久免费的AV在线电影网| 色吊丝性永久免费看码| 国产精品黄页免费高清在线观看| 国产成人精品免费视频大全| g0g0人体全免费高清大胆视频| 一区二区三区免费视频播放器 | 在线免费观看一区二区三区| 黄色成人网站免费无码av| 成人性生交视频免费观看| 日本一道高清不卡免费| 免费人妻无码不卡中文字幕18禁| 亚洲男人在线无码视频| 亚洲爆乳无码一区二区三区| 久久国产精品亚洲综合| 亚洲人6666成人观看| 亚洲av无码专区在线观看亚| 免费在线观看一区| 国产成人AV免费观看| 亚洲精品视频免费看| 成年美女黄网站色大免费视频| 国产成人精品免费视频大全五级 | 99精品视频在线观看免费专区 | 无人视频免费观看免费视频| 精品国产呦系列在线观看免费| 久久久久免费精品国产| 国产桃色在线成免费视频| 国产一区视频在线免费观看 | 国产福利视精品永久免费| 在线jlzzjlzz免费播放| 亚洲无码高清在线观看| 久久亚洲日韩精品一区二区三区| 亚洲a级在线观看|