zoukankan      html  css  js  c++  java
  • 软件设计模式C#

    软件设计模式C#

    Software Design Patterns in C#

     

    设计模式(Design Patterns)是你在实际应用程序开发中,对不断发现的软件设计问题的重复解决方案。设计模式是关于对象的设计和交互,关于对经常出现的软件开发挑战的一些完美和重用的解决方案,也提供了一个交流平台,

     

    “四人帮”(GOF)模式被认为是所有其他模式的基础,23种设计模式分为3类:创建型模式(Creational Pattern),结构型模式(Structural Pattern)和行为型模式(Behavioral Pattern)。

     

    为了让你先起步,这里提供了2种形式的源码:结构方面的(structural)和现实应用方法的(real-world)。结构方面的代码使用模式定义和UML类图中提供的类型名称,而实际应用方面的代码提供了你需要使用模式的真实设计情况。

     

      Creational Patterns 创建型模式

      Abstract Factory

      Creates an instance of several families of classes

      Builder

      Separates object construction from its representation

      Factory Method

      Creates an instance of several derived classes

      Prototype

      A fully initialized instance to be copied or cloned

      Singleton

      A class of which only a single instance can exist

     

      Structural Patterns 结构型模式

      Adapter

      Match interfaces of different classes

      Bridge

      Separates an object’s interface from its implementation

      Composite

      A tree structure of simple and composite objects

      Decorator

      Add responsibilities to objects dynamically

      Façade

      A single class that represents an entire subsystem

      Flyweight

      A fine-grained instance used for efficient sharing

      Proxy

      An object representing another object

     

      Behavioral Patterns 行为型模式

      Chain of Resp.

      A way of passing a request between a chain of objects

      Command

      Encapsulate a command request as an object

      Interpreter

      A way to include language elements in a program

      Iterator

      Sequentially access the elements of a collection

      Mediator

      Defines simplified communication between classes

      Memento

      Capture and restore an object's internal state

      Observer

      A way of notifying change to a number of classes

      State

      Alter an object's behavior when its state changes

      Strategy

      Encapsulates an algorithm inside a class

      Template Method

      Defer the exact steps of an algorithm to a subclass

      Visitor

      Defines a new operation to a class without change

     

     

    原英文URL

    http://www.dofactory.com/Patterns/Patterns.aspx#list

     

    上述各类模式的链接均提供了简单的解释、UML类图、Structural codeC#)和Real-world codeC#)。

  • 相关阅读:
    *Binary Tree Inorder Traversal
    First Unique Character in a String
    回溯法模板
    *Linked List Random Node
    *Odd Even Linked List
    *Maximum Product of Word Lengths
    Flatten 2D Vector
    Docker (dockerfile)
    Docker数据卷
    Docker入门
  • 原文地址:https://www.cnblogs.com/rickie/p/66788.html
Copyright © 2011-2022 走看看