Python09面向对象思想 设计原则

  自述:

    1.面向对象优点:可维护性好,易扩展,易复用;  缺点:性能没有面向过程高。

    2.面向对象 特点: 封装、继承、多态

             封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。

                   原则:分而治之,变则疏之。

                  优点:好维护,一个类的变化不会影响其他类,可以达到高内聚,低耦合的效果

                   继承:可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。

                    原则:把子类的共性提取出来,抽象出来父类

                    优点:规范约束子类,保证系统更加稳定,扩展子类而不需要改变客户端代码。从而达到易扩展的效果。

                    多态:是继承的一种具体体现,在父类的基础上实现个性化。

                    原则:继承父类的属性和方法,并进行个性化重写。

                         优点:结合继承,扩展出新功能,体现出面向对象的灵活性。

     3.面向对象的设计原则:总原则为开闭原则:对扩展开放,对修改关闭。增加新功能,不改变原有代码

        1)单一职责原则:通过封装高内聚的类实现。

        2)依赖倒置原则:通过继承和多态实现,客户端调用父类的行为属性,实际调用的是子类的实现。把易于扩展体现的淋漓尽致。

        3)组合复用原则:仅为了代码复用优先选择组合复用(把要复用的类定义成成员),而非继承复用。组合的耦合性相对继承低。

        4)里氏替换原则:父类出现的地方 可以被子类替换,子类拥有父类的所有功能。子类在重写父类方法时,尽量选择扩展重写,防止改变了功能。

        5)  迪米特法则:  类与类交互时,在满 足功能要求的基础 上,传递的数据量 越少越好。所有类之 间的耦合度都很低。

 

posted @ 2020-03-29 14:24  苍山如海,残阳如血  阅读(178)  评论(0)    收藏  举报