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

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

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

    對高內聚,低耦合的理解

    Posted on 2007-04-08 16:55 久城 閱讀(36978) 評論(14)  編輯  收藏 所屬分類: 軟件工程
    內聚:一個模塊內各個元素彼此結合的緊密程度

    耦合:一個軟件結構內不同模塊之間互連程度的度量


    最近編碼的時候,總是在猶豫是把某個方法封裝在一個類里,還是單獨的封裝成一個類。這讓我突然想起內聚耦合這兩個名詞。

    我們一直追求著,高內聚,低耦合。

    對于低耦合,我粗淺的理解是:

    一個完整的系統,模塊與模塊之間,盡可能的使其獨立存在。

    也就是說,讓每個模塊,盡可能的獨立完成某個特定的子功能。

    模塊與模塊之間的接口,盡量的少而簡單。

    如果某兩個模塊間的關系比較復雜的話,最好首先考慮進一步的模塊劃分。

    這樣有利于修改和組合。

    對于高內聚,我粗淺的理解是:

    在一個模塊內,讓每個元素之間都盡可能的緊密相連。

    也就是充分利用每一個元素的功能,各施所能,以最終實現某個功能。

    如果某個元素與該模塊的關系比較疏松的話,可能該模塊的結構還不夠完善,或者是該元素是多余的。

    內聚和耦合,包含了橫向和縱向的關系。功能內聚和數據耦合,是我們需要達成的目標。橫向的內聚和耦合,通常體現在系統的各個模塊、類之間的關系,而縱向的耦合,體現在系統的各個層次之間的關系。

    對于我在編碼中的困惑,我是這樣想的,用面向對象的思想去考慮一個類的封裝。
    一個方法,如何封裝,拿到現實生活中來看,看這種能力(方法)是否是屬于這類事物(類)的本能。
    如果是,就封裝在這個類里。
    如果不是,則考慮封裝在其它類里。
    如果這種能力,很多事物都具有,則一定要封裝在這類事物的總類里。
    如果這種能力,很多事物都會經常用到,則可以封裝成一個總類的靜態方法。


    歡迎來訪!^.^!
    本BLOG僅用于個人學習交流!
    目的在于記錄個人成長.
    所有文字均屬于個人理解.
    如有錯誤,望多多指教!不勝感激!

    Feedback

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2008-05-25 16:01 by 達達
    謝謝了^_^,正在學習管理信息系統,上課一直沒明白耦合和內聚兩個概念,看了大俠一文,頓悟

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2008-08-13 19:44 by 小李廣
    不錯啊,受用

    # re: 對高內聚,低耦合的理解[未登錄]  回復  更多評論   

    2008-11-18 10:42 by ethan
    十分感謝~~

    # Rosicky  回復  更多評論   

    2009-01-18 11:07 by Rosicky
    Learn a lot from u. How are you these days?

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2009-09-19 17:47 by hxr
    學習,受用!

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2010-08-31 12:45 by 魏鵬
    謝謝!

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2010-09-06 16:42 by 劉輝亞
    謝謝

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2010-10-15 15:31 by FGW
    學習啦 ,非常感謝。
    還有,第二個“對于低耦合”是否是筆誤? :)

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2011-01-12 13:13 by 李根瑩
    對于我在編碼中的困惑,我是這樣想的,用面向對象的思想去考慮一個類的封裝。
    一個方法,如何封裝,拿到現實生活中來看,看這種能力(方法)是否是屬于這類事物(類)的本能。
    如果是,就封裝在這個類里。
    如果不是,則考慮封裝在其它類里。
    如果這種能力,很多事物都具有,則一定要封裝在這類事物的總類里。
    如果這種能力,很多事物都會經常用到,則可以封裝成一個總類的靜態方法。

    對lz以上的理解非常支持,本人認為這不僅僅是對高內聚低耦合的的直觀解釋,也是對面向對象很好的一個解釋

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2011-01-12 13:54 by 久城
    @FGW
    已修正,多謝。

    # re: 對高內聚,低耦合的理解[未登錄]  回復  更多評論   

    2011-04-25 13:49 by walter
    如果這種能力,很多事物都會經常用到,則可以封裝成一個總類的靜態方法。

    是不是Utilities class?

    # re: 對高內聚,低耦合的理解[未登錄]  回復  更多評論   

    2013-08-23 11:12 by 匿名
    受益啊,多謝多謝!

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2014-05-28 20:07 by 泡沫__opt
    瞬間明了!!!大謝!!!

    # re: 對高內聚,低耦合的理解  回復  更多評論   

    2015-07-20 18:10 by 中二
    終于明白了
    ,別人講的太深奧了,就不能粗淺的講么真是蛋疼

    Copyright © 久城

    主站蜘蛛池模板: 亚洲图片在线观看| 久久精品国产99精品国产亚洲性色| 亚洲成年人免费网站| 全免费a级毛片免费看| 久久精品亚洲综合专区| 国产精品视频白浆免费视频| 亚洲国产精品无码久久久不卡| 免费成人在线电影| 少妇中文字幕乱码亚洲影视 | 国产成人人综合亚洲欧美丁香花| 成人免费看片又大又黄| 亚洲Aⅴ在线无码播放毛片一线天 亚洲avav天堂av在线网毛片 | 成全在线观看免费观看大全| 亚洲AV无码成人精品区天堂| 69视频免费观看l| 亚洲欧洲日韩国产一区二区三区| 拍拍拍又黄又爽无挡视频免费| 亚洲成a人无码亚洲成www牛牛| 国产成人免费片在线观看| 高清免费久久午夜精品| 亚洲国产精品国自产拍AV| 午夜免费1000部| 亚洲av无码成人精品区一本二本| 久久久久亚洲?V成人无码| 无码国产精品一区二区免费式芒果| 亚洲六月丁香六月婷婷蜜芽| 国产成人高清精品免费软件| 久久av免费天堂小草播放| 亚洲综合亚洲国产尤物| 国产无遮挡吃胸膜奶免费看视频| 岛国精品一区免费视频在线观看 | 无码av免费一区二区三区试看| 亚洲人成77777在线播放网站不卡| 亚洲A∨精品一区二区三区| 色www永久免费网站| 久久精品国产亚洲AV蜜臀色欲| 免费国产美女爽到喷出水来视频| 无码人妻一区二区三区免费看 | 一级做a爰片久久毛片免费看| 97久久精品亚洲中文字幕无码| 日本免费的一级v一片|