软件设计原则 - 第二周总结

用户头像
孙志平
关注
发布于: 2020 年 06 月 16 日

面向对象编程编程的本质

利用面向对象的多态特性进行面向对象编程。



框架与工具

工具:我写好你来用。

框架:你按我的规范写,我来调用你。

架构师应该关注的是框架,因为框架是架构落地的保证



软件设计的目的

软件设计的最终目的,是设计一个“强内聚,松耦合”的软件,这样的软件具备以下特性

  • 易扩展:易于增加新功能

  • 更强壮:不容易被初心的人破坏,避免因加新功能而修改类

  • 可移植: 能够在多样的环境中运行

  • 更简单:容易理解、容易维护



面向对象设计的原则

开闭原则(OCP)

  • 对修改关闭

  • 对扩展开放



依赖倒置(DIP)

  • 高层模块不能依赖底层模块,而是大家都依赖抽象;

  • 抽象不能依赖实现,而是实现依赖抽象

依赖倒置的关键在于我来定义,你来实现。



里氏替换原则(LSP)

在场景中任何使用父类的地方都能够用子类代替



单一原则(SRP)

一个类只有一个引起他变化的原因



接口隔离(SPR)

如果一个类有多个职责,应该用多个接口进行隔离,不同的使用者,面对不同的接口



用户头像

孙志平

关注

还未添加个人签名 2018.05.08 加入

还未添加个人简介

评论

发布
暂无评论
软件设计原则-第二周总结