创建模式、结构模式和行为模式在软件开发中解决的事情

创建模式

创建型模式,就是创建对象的模式,抽象了实例化的过程。 
它帮助一个系统独立于如何创建、组合和表示它的那些对象。 
关注的是对象的创建,创建型模式将创建对象的过程进行了抽象,也可以理解为将创建对象的过程进行了封装,作为客户程序仅仅需要去使用对象,而不再关心创建对象过程中的逻辑

结构模式

结构型模式是为解决怎样组装现有的类,设计他们的交互方式,从而达到实现一定的功能的目的。 
结构型模式包容了对很多问题的解决。例如:扩展性(外观、组成、代理、装饰)封装性(适配器,桥接)。

行为模式

行为型模式涉及到算法和对象间职责的分配。 
行为模式描述了对象和类的模式,以及它们之间的通信模式。 
行为型模式刻划了在程序运行时难以跟踪的复杂的控制流可分为行为类模式和行为对象模式

  1. 行为模式使用继承机制在类间分派行为。
  2. 行为对象模式使用对象聚合来分配行为。

一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任何一个对象都无法单独完成的任务。

一, 创建型模式 (Creational Patterns)
这一类型的设计模式, 所要表现的是对象的创建过程及和用户所使用的对象之间的关系.
二, 结构型模式 (Structural Patterns)
这一类的模式关心类和对象之间怎么组织起来形成大的结构. 主要使用继承来组织接口或实现.
三, 行为型模式 (Behavioral Patterns)
这一类的模式关心的是算法以及对象之间的任务分配. 它所描述的不仅仅是对象或类的设计模式, 还有它们之间的通讯模式.

原文地址:https://www.cnblogs.com/DreamRecorder/p/9099679.html

时间: 2024-11-09 05:34:16

创建模式、结构模式和行为模式在软件开发中解决的事情的相关文章

R型思维模式对软件开发的影响(草稿)

The pragmatic programmers 一直在工作之余读些书,之前主要是纯英文版的计算机相关的算法,编译器,数学等,想通过读这些书来提高自己每日工作效能,结果收效甚微.一是,因为纯英文的书,阅读的慢,第二,也是最重要的一点,发现掌握的很慢,思前想后感觉可能是和工作的内容距离较远,两者不能互相辅助,第三,不能直接的回馈工作本身. 索性就换一换类型,最先入手的,是<agile software development-principles, patterns, and practices

减少存储过程封装业务逻辑-web开发与传统软件开发的思维模式不同

本篇文章讨论并不是:不要使用存储过程,因为有些事情还是要存储过程来完成,不可能不用.而是关于:"业务逻辑是不是要封装在存储过程中实现,这样子php.java等就是调用存储过程". 业务逻辑,通俗说就是:比如要取数据的操作,取出会员编号为x的数据,原来我们一般是封装成函数,或者直接编写sql语句查询.现在是交给数据库的存储过程去完成. +------------------------------------------------------------ 写这篇文章的缘由 +-----

敏捷软件开发(1)--- STATE 模式

如果状态在运行过程中,不停的切换和改变,我们怎么办? 状态的迁移是我们生活和工程中非常普遍的一个概念.于是在数学上有一种理论来分析和解决这个问题. 有限状态机理论是一个非常成熟的理论,所有动作和流程的迁移可以归结为状态的迁移. 这个理论的前提是: 状态的数目是确定的,或者说是有限的. 状态的迁移方向是固定的,也就是有向的. 状态存储关于过去的信息,就是说:它反映从系统开始到现在时刻的输入变化.转移指示状态变更,并且用必须满足来确使转移发生的条件来描述它.动作是在给定时刻要进行的活动的描述.有多种

NET设计模式 第二部分 创建型模式(4):工厂方法模式(Factory Method)

工厂方法模式(Factory Method) ——.NET设计模式系列之五 Terrylee,2004年1月2日 概述 在软件系统中,经常面临着“某个对象”的创建工作,由于需求的变化,这个对象的具体实现经常面临着剧烈的变化,但是它却拥有比较稳定的接口.如何应对这种变化?提供一种封装机制来隔离出“这个易变对象”的变化,从而保持系统中“其它依赖该对象的对象”不随着需求的改变而改变?这就是要说的Factory Method模式了. 意图 定义一个用户创建对象的接口,让子类决定实例化哪一个类.Facto

案例分析:设计模式与代码的结构特性——工厂方法模式

什么是工厂方法模式 工厂方法模式(FACTORY METHOD)是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦.复用和方便后期维护拓展的目的.它的核心结构有四个角色,分别是抽象工厂:具体工厂:抽象产品:具体产品.工厂方法(Factory Method)模式定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中.核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一

数据库的三级模式结构

数据库的三级模式结构 外模式.模式.内模式 数据库的两级映像

设计模式之创建型模式—— 1.1 简单工厂模式

<?php                  /** * 1.1 简单工厂模式 * * 解决的问题: *  如何解决多个类实例化对象的问题. *  注意:因为是简单工厂模式,所以要实例 *    化的类不能太多,否则请使用1.2节 *    的工厂方法模式. * * 解决方案: *  建立一个工厂(即一个工厂类),通过参数的 *  传递动态决定应该创建哪一个产品类(这些 *  产品类继承自一个父类或接口)的实例. *  *  * 该模式中包含三种角色: *  注:这里的角色指的就是类! *  1

设计模式(三) : 创建型模式--工厂方法模式

工厂方法模式区别与简单工厂模式主要在于,factory中对对象的实例化延迟到了子类的factory中, 这也是优于简单工厂的地方.下面看这个模式的类图(截自<java与模式>): 示意性代码: ? 1 2 3 4 5 6 7 package com.javadesignpattern.factorymethod; public interface Creator {          public Product fatcory(); } package com.javadesignpatte

创建型模式(六)建造者模式

介绍这个设计模式之前,我先说两个知识点.Is-a.Has-a. Is-a 指一个类是另一个类的一种,是属于关系. Has-a 指表示一个角色的一项责任. 一句话的概要 创建一个复杂的对象,让其由各部分子对象通过一定的步骤而组合而成.这就是建造者模式. 剧情 小明跟女神交往过程中,总是感觉进展缓慢.于是小明就决定用一个烛光晚餐的惊喜,来打动女神. 但是,小明就一个人,他白天要约女神出来.所以他准备雇佣一个人来进行烛光晚餐的准备. 剧情看着很简单,但是我们来分析一下,怎么构造这种场景. 首先,必要的