软件设计模式概述

1. 引入设计模式的必要性

引入软件设计模式将成为企业或者个人可持续发展的必然选择。只有专业,才能在这个领域做得最好,为社会、企业和个人带来更多的价值。

2 软件设计遵循的基本原则

(1).高内聚、低耦合

一个软件系统要有一个稳定的架构,不会随需求的改变而发生巨大的变动。因此,高内聚、低耦合是一个软件系统设计中必须遵循的基本原则。

(2).面向抽象编程

在面向过程的软件开发中,上层组件调用下层组件,就意味着上层组件依赖于下层组件,当下层组件发生剧烈变化时,上层组件也要跟着一起发生变动,这将导致软件组件模块的复用性大大降低,从而增加软件开发成本,使软件结构设计上存在一定的臃肿性,不利于后期系统维护工作。

(3)多用组合少用继承

在面向对象的软件设计中,对于类的扩展,首先想到的是使用类的继承来实现,由子类继承父类,从而完成对子类功能的扩展。继承的好处是可以尽量让相同的属性或者功能复用,但是随着项目越来越大,需求的不断变化,继承就会变得越来越臃肿,后期难以控制和维护。最重要的是,继承会不分青红皂白地把父类的公有和受保护的方法统统继承来,而这些方法可能是子类不需要的功能,会对子类产生一些危害。

(4)“开-闭”原则

“开- 闭”原则,即“对扩展开放,对修改关闭”,指的是在软件设计中,当对某一软件实体进行扩展时,尽量不要去修改原有的软件实体,换句话说就是在不修改原有软件实体的情况下对其进行扩展。这种软件设计方式其实是一种目标,它考虑了软件后期的维护等其他因素。一个软件系统如果可以达到这个目标,那它就是可扩展、易维护的。

3.设计模式的分类

(1).创建型模式

创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:

工厂方法模式(Factory MethodPattern)

抽象工厂模式(AbstractFactory Pattern)

建造者模式(Builder Pattern)

原型模式(PrototypePattern)

单例模式(SingletonPattern)

(2).结构型模式

结构型模式用来处理类或者对象的组合,主要包含以下7种设计模式:

适配器模式(Adapter Pattern)

桥接模式(Bridge Pattern)

组合模式(CompositePattern)

装饰者模式(DecoratorPattern)

外观模式(Facade Pattern)

享元模式(FlyweightPattern)

代理模式(Proxy Pattern)

(3).行为型模式

行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含以

下11种设计模式:

责任链模式(Chain ofResponsibility Pattern)

命令模式(Command Pattern)

解释器模式(InterpreterPattern)

迭代器模式(IteratorPattern)

中介者模式(MediatorPattern)

备忘录模式(Memento Pattern)

观察者模式(ObserverPattern)

状态模式(State Pattern)

策略模式(Strategy Pattern)

模板方法模式(TemplateMethod Pattern)

访问者模式(Visitor Pattern)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值