Week 2 学习总结

用户头像
balsamspear
关注
发布于: 2020 年 10 月 14 日

面向对象

面向对象以更接近人的思维方式去和岁计算机沟通,面向对象编程更符合人对问题的理解,也更符合人对编程这件事情的认知。

面向对象的三大特性是构架设计的基础:

  1. 封装

  2. 继承

  3. 多态

# 精彩留言
机器语言是机器指令的抽象
结构化语言是人类逻辑的抽象
面向对象是现实世界的抽象
通过面向对象语言解决复杂线性逻辑的耦合
利用多态进行编程,才是面向对象编程

代码质量

高质量代码

  1. 可维护性

  2. 可读性

  3. 可扩展性

  4. 灵活性

  5. 简洁性

  6. 可复用性

  7. 可测试性



如何写出高质量代码

  1. 设计思想

  2. 设计原则

  3. 设计模式

  4. 编程规范

  5. 重构技巧

开闭原则

开闭原则(Open Closed Principle),对扩展开放,对修改关闭,即不修改现有代码或少量修改就可以添加新功能。



如何实现开闭原则?



  1. 抽象

  2. 策略模式

  3. 适配器模式

  4. 观察者模式

依赖倒置原则

依赖倒置原则(Dependency Inversion Principle),高层模块不依赖低层模块,而是大家都依赖独立的抽象。



  1. 好莱坞原则

  2. 先开发好抽象,高层模块和低层模块针对共同的抽象进行开发

  3. 抽象(接口)一般由高层模块进行设计,与高层模块属于同一层级

  4. 高层模块调用接口方法,低层模块实现接口方法

  5. Tomcat、JDBC、Spring

  6. 框架设计的基础

里氏替换原则

里氏替换原则(Liskov Substitution Principle),子类对象能够替换程序中父类对象出现的任何地方,并且保证程序原来的逻辑行为不变及正确性不被破坏。



凡是使用基类的地方,一定也适用于其子类。



  1. 判断继承是否合理

  2. 判断程序对抽象的使用是否合理

  3. 判断时,需要结合到具体的业务场景中

  4. 反例:JDK Properties -> Hashtable

单一职责原则

单一职责原则(Single Responsibility Principle),一个类/模块只负责完成一个职责/功能。



如何判断类是否单一:

  1. 代码行数过多,如几百上千行,看着头疼

  2. 方法过多,如十几个以上

  3. 依赖的类过多,如十几个

接口隔离原则

接口隔离原则(Interface Segregation Principle),客户端不应该强迫依赖它不需要的接口。



将大接口拆分为多个小接口,每个小接口服务一个客户。

用户头像

balsamspear

关注

还未添加个人签名 2019.10.24 加入

还未添加个人简介

评论

发布
暂无评论
Week 2  学习总结