建设网站需要的资金清单,怎么写网站规划方案,海口网约车最新政策,学习网站开发技术写在前面的话
以前也学习过设计模式#xff0c;但是总感觉学不懂#xff0c;最近开发项目深刻感受到设计模式的重要性#xff0c;系统学习一些。
我是观看油管上李建忠老师的视频学习做的总结#xff0c;会不断补充#xff0c;欢迎大家指出错误#xff0c;学习进步。
…写在前面的话
以前也学习过设计模式但是总感觉学不懂最近开发项目深刻感受到设计模式的重要性系统学习一些。
我是观看油管上李建忠老师的视频学习做的总结会不断补充欢迎大家指出错误学习进步。
首先设计模式是在软件开发过程中用于解决特定设计问题的经验总结和最佳实践。它们是一种面向对象设计的指导原则可帮助开发人员更有效地构建可重用、可维护和可扩展的软件系统。
看了李建忠老师的视频我发现为什么之前学习设计模式感到很吃力因为之前学习只是为了去看某个模式的代码是怎么写的用的时候比葫芦画瓢所以理解的并不深刻有点像死记硬背。
所以想要学懂设计模式我们不应该把眼光单单放在看懂某一模式的代码而是从更底层的方面去了解为什么要有设计模式、这个设计模式基于什么情况使用、软件开发过程中设计模式解决了什么问题。带着这些问题去研究设计模式才能更好的举一反三。
设计模式其实是一种面向对象设计的指导原则“好的面向对象设计模式”指的是那些可以满足“应对变化提高复用”的设计。
软件设计的要点是“寻找变化点在变化点处应用设计模式”
“什么时候什么地方应用设计模式比理解设计模式结构本身更为重要。”
设计模式分类
从目的来看
创建型模式结构型模式行为型模式
从范围来看
类模式处理类与子类的静态关系对象模式处理对象间的动态关系
遵循的原则
单一职责原则一个类应该只有一个引起它变化的原因。一个类应该只包含一个责任这样可以提高类的内聚性和可维护性。
开放封闭原则软件实体类、模块、函数等应该对扩展开放对修改关闭。通过抽象和多态可以使系统在不修改代码的情况下进行扩展。
里氏替换原则任何父类可以被子类替换而程序的行为不会受到影响。子类应该能够替代其父类在所有使用父类的地方这样可以确保系统的稳定性和扩展性。
接口隔离原则客户端不应该依赖于它不需要使用的接口。将大的接口拆分为更小、更具体的接口可以减少耦合性并提高系统的可维护性和灵活性。
依赖倒置原则应该依赖于抽象而不是具体实现。高层模块不应该依赖低层模块二者都应该依赖于抽象。通过使用接口和依赖注入等技术可以降低组件之间的耦合性。
迪米特法则一个对象应该对其他对象有最少的了解。一个对象应该与其它对象之间保持松耦合只与最紧密的的朋友发生交互。减少对象之间的依赖关系可以提高系统的可维护性和灵活性。
其实这些原则更准确来说是面向对象的设计原则项目开发过程中通过应用设计模式来到达满足这些原则使得代码的可读性、可扩展性大大提高。
目前关于设计模式的介绍只总结到这些后续会继续补充尽量用最少的语言表达最清楚。