设计原则-编码过程Solid+迪米特

先学面向对象  ----》  实现功能(设计模式 + 算法(数据结构))  ---》框架(多种设计模式)---》架构(服务器集群)

S单一职责  : 类上 /类方法少,也可以在方法上

I接口隔离:依赖(使用)接口  ----实现接口(接口子类)

    A类通过接口依赖(使用)B类,接口最小原则,防止实现类B实现不需要的方法

D依赖倒换(面向接口编程):高层:接口/抽象类(制定规范)  底层:具体实现类,细节依赖抽象即具体类使用接口

             让 变量引用 与 实际对象 之间有个缓冲层。利于扩展优化

L里氏替换(里女士提出,如何正确使用继承):要求换子类,程序行为没发生变化。即使用继承,要求尽量不要重写父类方法!

                                          但继承会带来侵入性,增加了耦合,即父变子倒霉。可以通过聚合,组合,依赖解决问题。

                                         多态频繁使用,导致错误?这他么是跟多态对着干啊

                                            但又想用父类方法,可以让子类提升档次(去除继承关系),和原父类公用基类,组合(new?)使用A里方法

 O开闭原则(ocp):提供方修改扩展开放,使用方修改关闭

 

修改后

 

 

迪米特法则(最少知道原则,和直接朋友通信,不要和陌生朋友说话)目的降低类见耦合!

 直接朋友: 成员变量,方法参数,返回值

陌生朋友:方法里面new对象

 依赖,关联,聚合,组合等都是耦合

 

合成复用原则(少用继承,多用合成/聚合)

posted on 2022-01-01 09:41  daofree  阅读(23)  评论(0编辑  收藏  举报