1、编程思想
可落地、可外显
能够使我们的代码,去承载项目中很复杂的业务逻辑,并且使我的代码看起来非常的简洁易懂,并且易于扩展。
2、设计核心思想
高内聚,低耦合
高内聚:尽可能类的每个成员方法只完成一件事
低耦合:减少类内部,一个成员方法调用另一个成员方法。
高内聚使程序更加可靠和可读
低耦合使程序易于扩展和复用
3、七大设计原则
1单一职责原则
一个类应该只有一个发生变化的原因
2开放封闭原则
对功能扩展开放
面向修改代码封闭
3依赖倒置原则
高层模块不应该依赖于底层模块
两个都依赖于抽象
4里式替换原则
5接口分离原则
6迪米特原则
7合成复用原则
关于依赖
1.一个优秀的面向对象程序设计,核心的原则之一就是将变化「隔离」/「封装」,使得变化部分发生变化时,其他部分,不受影响。
2.为了实现这个目的,需要使用面向接口编程,使用后,客户类,不再直接依赖服务类,而是依赖一个抽象的接口,这样,客户类就不能在内部直接实例化服务类。
3.但是客户类在运行的过程中,又需要具体的服务类来提供服务,因为接口是不能实例化的,就产生了一个矛盾:客户类不允许实例化服务类,但是客户类又需要服务类的服务。
4.为了解决这个矛盾,我们设计了一种解决方案,既︰客户类定义一个注入点,用于服务类的注入,
而客户类的客户类(Program类)负责根据情况,实例化服务类,注入到客户类中,从而解决了这个矛盾。