设计模式

设计模式是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。其实就是经过前人反复使用总结使用得出在不同场景有对应的解决方案。

使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。

设计原则

开闭原则

模块应对扩展开放,对修改关闭,也就是在对程序进行拓展的时候,不要去修改原来的代码,实现热插拔的效果。这样可以使得程序扩展性更好,更易于维护。(主要是使用接口和抽象类实现,例如“抽象工厂模式”)

里氏替换原则

任何父类出现的地方,子类一定可以出现,就是用子类替换也一定可以运行。(子类可以扩展父类但不能改变父类的功能)(里氏替换原则可以说继承复用的基础)

依赖倒转原则

程序要依赖于抽象接口,不要依赖于具体实现。(开闭原则的基础)针对接口编程,依赖抽象类而不依赖具体类。

接口隔离原则

使用多个隔离的接口,比使用单个接口要好。其实就降低程序之间的耦合度,增加系统的可维护性。

最少知道原则(迪米特法则)

一个实体应当尽量少地与其他实体之间发生相互作用,使得系统功能模块相对独立。也是降低类之间的耦合度。

合成复用原则

尽量使用合成/聚合的方式,而不是使用继承。某些情景下可以在一个新对象里面使用一些已有的对象达到复用的作用,而不是通过继承的方式,这样如果已有的类要进行改动就不需要对所有的类进行改动了。

设计模式的分类

创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。

J2EE模式:MVC 模式、业务代表模式、组合实体模式、数据访问对象模式、前端控制器模式、拦截过滤器模式、服务定位器模式、传输对象模式。

#设计模式#
设计模式介绍 文章被收录于专栏

设计模式是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。其实就是经过前人反复使用总结使用得出在不同场景有对应的解决方案。

全部评论
设计模式-原则
点赞 回复 分享
发布于 04-23 14:24 北京

相关推荐

在实际项目中常用的设计模式有如下几种:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=1a0513f768dd42e88065708ac3b1237f单例模式(Singleton):应用于需要保证全局只有一个实例的情况,例如数据库连接池、线程池。工厂模式(Factory):应用于创建对象实例的场景,隐藏实际创建逻辑,提供一个统一的接口。观察者模式(Observer):应用于一对多的依赖关系,当一个对象状态发生改变时,其依赖的对象会自动进行更新。适配器模式(Adapter):应用于将一个类的接口转换成客户端所期望的另一种接口,常用于旧代码的升级与兼容。策略模式(Strategy):应用于根据不同的策略做出不同的处理,例如支付方式的选择、排序算法的选择等。装饰器模式(Decorator):应用于为对象动态添加额外的功能,而不需要修改其原始代码。模板方法模式(Template Method):应用于定义算法的骨架,将一些步骤的具体实现延迟到子类中。命令模式(Command):应用于将请求封装成具体的对象,使得可以用不同的请求对客户进行参数化。迭代器模式(Iterator):应用于提供一种方法来访问一个容器对象中的各个元素,而无需暴露其内部结构。组合模式(Composite):应用于将对象组合成树形结构以表示部分-整体的层次结构,使得用户对单个对象和组合对象的使用具有一致性。
点赞 评论 收藏
分享
5 19 评论
分享
牛客网
牛客企业服务