写点什么

架构师 3 期 3 班 -week2- 总结

用户头像
zbest
关注
发布于: 2020 年 12 月 02 日

面向对象

面向对象语言与面向对象编程是2回事

面向对象语言是指提供了面向对象特性的支持的语言

面向对象编程是编写符合面相对象特性的代码

面向对象的3个特性

封装,继承,多态



面向对象设计的目的

高内聚,低耦合

* 易扩展:易于增加新的功能

* 更健壮:稳定、不容易出错

* 可移植:在多样的环境下运行

* 更简单:容易理解,容易维护



面相对象设计原则

SOLID原则



单一职责原则

Single Responsibility Principle,缩写为SRP

一个类或模块只负责完成一个职责或功能



开闭原则

Open Closed Principle,缩写OCP

软件实体(模块,类,方法等),应该对扩展开发,对修改关闭

开闭原则的关键是抽象



里式替换原则

Liskov Substitution Principle,缩写:LSP

子类对象能够替换程序中任何位置的父类出现的位置,并且可以正确执行



接口隔离原则

Interface Segregation Principle,缩写ISP

客户端不应该被强迫依赖它不需要的接口



依赖反转原则

Dependency Inversion Principle,缩写DIP

高层模块(调用者)不依赖低层模块(被调用者),高层模块和低层模块应该通过抽象相互依赖。

抽象不要依赖具体实现细节,具体实现细节依赖抽象



依赖倒置不只是倒置了依赖关系,也倒置了开发顺序和职责。

从底层模块提供接口和实现供高层模块调用,倒置成了高级模块定义接口供低层模块来实现。



软件设计中的问题

* 僵化性:系统很难修改,每一次改动都会设计很多其他部分的改动

* 脆弱性:对系统的改动很容易造成其他部分的各种问题

* 牢固性:很难拆分重用某一部分代码

* 粘滞性:做正确的事情比做错误的事情要困难,重构困难

* 不必要的复杂性

* 不必要的重复性

* 晦涩性:代码可读性差,其他人甚至设计人员本身都难以理解



框架

框架与工具的区别

1.框架调用应用程序,应用程序使用工具

2.架构师用框架保证架构的落地,架构师使用工具提高开发效率



框架的基本设计原则

依赖倒置原则



发布于: 2020 年 12 月 02 日阅读数: 20
用户头像

zbest

关注

一个胖子 2020.11.04 加入

一个不正经的java程序员, 整天写着openresty和go的代码, 努力从键摄向非职业摄影师迈进, 快要溺死在内耗里的中年人, 胖子。

评论

发布
暂无评论
架构师 3 期 3 班 -week2- 总结