zoukankan      html  css  js  c++  java
  • 面向对象原则

    面向对象的基本原则:多聚合,少继承。低耦合,高内聚.
    【高内聚、低耦合】
        内聚:每个模块尽可能独立完成自己的功能,不依赖于模块外部的代码。

        耦合:模块与模块之间接口的复杂程度,模块之间联系越复杂耦合度越高,牵一发而动全身。

        目的:使得模块的“可重用性”、“移植性”大大增强

        通常程序结构中各模块的内聚程度越高,模块间的耦合程度就越低

        模块粒度:
          『函数』
               高内聚:尽可能类的每个成员方法只完成一件事(最大限度的聚合)

               低耦合:减少类内部,一个成员方法调用另一个成员方法

          『类』
               高内聚低耦合:减少类内部,对其他类的调用
        
          『功能块』
               高内聚低耦合:减少模块之间的交互复杂度(接口数量,参数数据)


          横向:类与类之间、模块与模块之间
          纵向:层次之间

          尽可能,内容内聚,数据耦合

          详细参考:http://apps.hi.baidu.com/share/detail/12189176
                    http://www.iteye.com/topic/49082
                    

    【多聚合、少继承】
        聚合:事物A由若干个事物B组成,体现在类与类之间的关系就是:“类B的实例”作为“类A”的“成员对象”出现。
        
        继承:顾名思义,体现在类与类之间的关系就是:“类B”被类A所继承

        显然,当观察类B所具有的行为能力时,“聚合”方式更加清晰。

        典型应用:java适配器模式中,优选“对象适配器”,而不是“类适配器”

  • 相关阅读:
    Bzoj 2134: [国家集训队2011]单选错位(期望)
    洛谷 P1230 智力大冲浪
    洛谷 P2695 骑士的工作
    洛谷 P1551 亲戚
    洛谷 P1111 修复公路
    洛谷 P1599 结算日
    HDU 1166 敌兵布阵
    洛谷 P2212 [USACO14MAR]浇地Watering the Fields
    洛谷 P1506 拯救oibh总部
    洛谷 P1396 营救
  • 原文地址:https://www.cnblogs.com/hoobey/p/7260139.html
Copyright © 2011-2022 走看看