`
cakin24
  • 浏览: 1396797 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

设计模式概述

 
阅读更多

一 软件设计遵循的基本原则
1 高内聚,低耦合
一个软件系统要有一个稳定的架构,不会随需求的改变而发生巨大的变动。因此,高内聚、低耦合是一个软件系统设计中必须遵循的基本原则。
2 面向抽象编程
在面向过程的软件开发中,上层组件调用下层组件,就意味着上层组件依赖于下层组件,当下层组件发生剧烈变化时,上层组件也要跟着一起发生变动,这将导致软件组件模块的复用性大大降低,从而增加软件开发成本,使软件结构设计上存在一定的臃肿性,不利于后期系统维护工作。
3 多用组合少用继承
在面向对象的软件设计中,对于类的扩展,首先想到的是使用类的继承来实现,由子类继承父类,从而完成对子类功能的扩展。继承的好处是可以尽量让相同的属性或者功能复用,但是随着项目越来越大,需求的不断变化,继承就会变得越来越臃肿,后期难以控制和维护。最重要的是,继承会不分青红皂白地把父类的公有和受保护的方法统统继承下来,而这些方法可能是子类不需要的功能,会对子类产生一些危害。
4 “开-闭”原则
“开-闭”原则,即“对扩展开放,对修改关闭”,指的是在软件设计中,当对某一软件实体进行扩展时,尽量不要去修改原有的软件实体,换句话说就是在不修改原有软件实体的情况下对其进行扩展。这种软件设计方式其实是一种目标,它考虑了软件后期的维护等其他因素。一个软件系统如果可以达到这个目标,那它就是可扩展、易维护的。

 

二 设计模式概述
1 什么是设计模式
设计模式时一套被反复使用,多数人知晓的,经过分类编目的代码设计经验总结。使用设计模式的目的是为了提高代码的可重用性,让代码更容易被他人理解,使系统治理更加有保证,系统更加可靠。
2 为什么需要设计模式
首先,它可以提升个人的编程能力、思维能力和设计能力,极大提高工作效率,让个人获得更大发展空间;
其次,对于企业,应用设计模式可使软件产品质量得到保证,系统稳定性大大提升,为企业创造出更多的利润上升空间;
最后,个人和企业都在不断地发展壮大,自然会创造出更多的社会价值,为社会作出更多的贡献。
3 如何正确应用设计模式
实践是需要理论知识积累的。要想正确应用各种设计模式,首先需要学习设计模式,掌握设计模式的实现要点,最重要的是在学习设计模式当中掌握软件设计原则。设计模式是前人的实践经验总结出来的,具有固定的实现方式,但是设计原则是活的,是需要我们认真体会和领悟的。

 

三 设计模式的分类
1 创建型模式
创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:
工厂方法模式(Factory Method Pattern)
抽象工厂模式(Abstract Factory Pattern)
建造者模式(Builder Pattern)
原型模式(Prototype Pattern)
单例模式(Singleton Pattern)
2 结构型模式
结构型模式用来处理类或者对象的组合,主要包含以下7种设计模式:
适配器模式(Adapter Pattern)
桥接模式(Bridge Pattern)
组合模式(Composite Pattern)
装饰者模式(Decorator Pattern)
外观模式(Facade Pattern)
享元模式(Flyweight Pattern)
代理模式(Proxy Pattern)
3 行为型模式
行为型模式用来对类或对象怎样交互和怎样分配职责进行描述:
责任链模式(Chain of Responsibility Pattern)
命令模式(Command Pattern)
解释器模式(Interpreter Pattern)
迭代器模式(Iterator Pattern)
中介者模式(Mediator Pattern)
备忘录模式(Memento Pattern)
观察者模式(Observer Pattern)
状态模式(State Pattern)
策略模式(Strategy Pattern)
模板方法模式(Template Method Pattern)
访问者模式(Visitor Pattern)

0
0
分享到:
评论

相关推荐

    设计模式概述及23种设计模式

    设计模式概述及23种设计模式 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式能使编写的程序具有...

    Java设计模式03设计模式概述.pdf

    ### Java设计模式03设计模式概述 #### 设计模式的诞生与发展 设计模式的概念并不是源自软件行业,而是从建筑行业中衍生而来。模式之父克里斯托弗·亚历山大(Christopher Alexander),作为加利福尼亚大学环境结构...

    设计模式概述大全.pdf

    ### 设计模式概述详解 #### 一、设计模式的基本概念 设计模式是在软件工程领域内一个极其关键的概念,它不仅提供了对于常见软件开发问题的有效解决方案,同时也为开发者们提供了一套标准化、可复用的设计思路。...

    设计模式概述,讲述什么是设计模式的ppt - 简单工厂模式

    ### 设计模式概述——简单工厂模式详解 #### 一、设计模式概览 设计模式是在软件工程领域中,为了解决特定问题而总结出来的一系列经验法则和最佳实践。通过运用设计模式,开发者可以在面对常见问题时,快速找到...

    03 第3章 设计模式概述

    03 第3章 设计模式概述03 第3章 设计模式概述03 第3章 设计模式概述

    EJB设计模式概述——讲解EJB设计模式的重要性及常用的模式

    【EJB设计模式概述】 EJB(Enterprise JavaBeans)设计模式是解决在Java EE平台中使用EJB组件遇到的问题和挑战的一种策略。这些模式旨在优化系统性能、可扩展性、可维护性,以及提高组件的重用性。在大型、复杂的...

    《Java设计模式》电子课件01至21章(程细柱PDF)

    内容包括统一建模语言基础知识、面向对象设计原则、设计模式概述、简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、...

    GOF设计模式概述(Gang of Four)

    《GOF设计模式概述》 GOF设计模式,全称为Gang of Four设计模式,源自于Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四位软件工程专家合著的经典著作《设计模式:可复用面向对象软件的基础》。这本书...

    软件体系结构与设计模式概述(ppt-96页).ppt

    "软件体系结构与设计模式概述" 软件体系结构是软件系统的基本组成部分,决定了软件系统的整体架构和性能。软件体系结构的基本概念包括软件构件、构件的外部可见属性、它们之间的相互关系等。软件体系结构的定义一直...

    Python编程中的常见设计模式概述与实现示例

    Python编程中的常见设计模式概述与实现示例

    软件体系结构与设计模式概述.pptx

    软件体系结构与设计模式概述.pptx

    java设计模式概述.zip

    Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以被重复使用,以解决在创建软件时遇到的常见问题。设计模式并非具体的代码或库,而是一种描述在某些特定上下文中,如何进行软件...

    23种软件设计模式概述(c++版QZ爬取).pdf

    软件设计模式是软件工程中关于设计软件架构、组织代码和解决问题的经过验证的方法和惯例。它由四人组(Gang of Four,简称GoF)在1995年出版的《设计模式:可复用面向对象软件的基础》一书中得到系统性的阐述,并...

    设计模式概述PPT学习教案.pptx

    设计模式是软件工程中的一种重要概念,它源于建筑领域,由Christopher Alexander提出。设计模式是对在特定上下文中反复出现的问题及其解决方案的一种描述,它提供了一种标准的、可重用的解决方案,避免了每次遇到...

    软件设计模式(java版)习题答案.pdf

    软件设计模式概述 软件设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 面向对象的设计原则 1. 一个...

    第3章_设计模式概述.ppt

    设计模式的诞生与发展 设计模式的定义与分类 GoF设计模式简介 设计模式的优点

    GOF(设计模式)概述

    ### GOF设计模式概述 #### 一、引言 设计模式是软件开发中解决常见问题的一种通用解决方案。《设计模式:可复用面向对象软件的基础》(Design Patterns: Elements of Reusable Object-Oriented Software)一书由...

    Python 设计模式概述:提升代码质量的解决方案

    Python 设计模式是解决编程中常见问题的有效方法,旨在提高代码的可重用性和可维护性。常见的设计模式包括单例模式、工厂模式、观察者模式、装饰者模式和策略模式。单例模式确保一个类仅有一个实例,适合需要全局...

    孙卫琴 23种 设计模式 概述

    设计模式是软件工程中的一种重要思想,用于解决常见的软件设计问题,提高代码的可复用性和可维护性。孙卫琴老师所讲解的23种设计模式涵盖了创建型、结构型和行为型三大类别,每一种都有其独特的应用场景和解决难题的...

Global site tag (gtag.js) - Google Analytics