Week 2 学习总结
面向对象
面向对象以更接近人的思维方式去和岁计算机沟通,面向对象编程更符合人对问题的理解,也更符合人对编程这件事情的认知。
面向对象的三大特性是构架设计的基础:
封装
继承
多态
代码质量
高质量代码
可维护性
可读性
可扩展性
灵活性
简洁性
可复用性
可测试性
如何写出高质量代码
设计思想
设计原则
设计模式
编程规范
重构技巧
开闭原则
开闭原则(Open Closed Principle),对扩展开放,对修改关闭,即不修改现有代码或少量修改就可以添加新功能。
如何实现开闭原则?
抽象
策略模式
适配器模式
观察者模式
依赖倒置原则
依赖倒置原则(Dependency Inversion Principle),高层模块不依赖低层模块,而是大家都依赖独立的抽象。
好莱坞原则
先开发好抽象,高层模块和低层模块针对共同的抽象进行开发
抽象(接口)一般由高层模块进行设计,与高层模块属于同一层级
高层模块调用接口方法,低层模块实现接口方法
Tomcat、JDBC、Spring
框架设计的基础
里氏替换原则
里氏替换原则(Liskov Substitution Principle),子类对象能够替换程序中父类对象出现的任何地方,并且保证程序原来的逻辑行为不变及正确性不被破坏。
凡是使用基类的地方,一定也适用于其子类。
判断继承是否合理
判断程序对抽象的使用是否合理
判断时,需要结合到具体的业务场景中
反例:JDK Properties -> Hashtable
单一职责原则
单一职责原则(Single Responsibility Principle),一个类/模块只负责完成一个职责/功能。
如何判断类是否单一:
代码行数过多,如几百上千行,看着头疼
方法过多,如十几个以上
依赖的类过多,如十几个
接口隔离原则
接口隔离原则(Interface Segregation Principle),客户端不应该强迫依赖它不需要的接口。
将大接口拆分为多个小接口,每个小接口服务一个客户。
评论