架构设计
松山云鹤
大道至简,跬步千里
展开
-
设计模式十(适配器模式,python语言实现)
基本原理请参考相关书籍。基本说明:公司总体上分为市场部MarketDepartment和生产部ProductDepartment市场部有分为:铣刀市场部:MillMD钻头市场部:DirllMD 生产部又分为:铣刀生成部:MillPD钻头生产部:DrillPD 客户通过市场部下订单,市场部接到订单通过生产部门完成订单。 #源代码#原创 2012-12-11 15:29:15 · 1061 阅读 · 0 评论 -
设计模式十五(命令模式,python语言实现)
基本原理请参考相应书籍,这里直接给实例 被控对象是机器人Robot,人(Client),通过控制器(controller)编程,给机器人发送指令。Comand是指令的父类,具体指令有GoAhead(前进),GoBack(后退),GoLeft(向左),GoRight(向右) # -*- coding: utf-8 -*-########################原创 2012-12-13 09:16:38 · 1973 阅读 · 0 评论 -
设计模式十六(职责链模式,python实现)
原理请参考相应书籍,这里直接给例子 职责链模式,用于分级审查。这里给出对于请求Request的处理(分等级的事故)。职责链上涉及到:LevelOne 县政府LevelTwo 市政府LevelThree 省政府 # -*- coding: utf-8 -*-####################################################原创 2012-12-13 11:49:38 · 1073 阅读 · 0 评论 -
设计模式十一(桥接模式,python 语言实现)
基本原理请参考相关书籍,这里直接给实例假期旅游 从目的地角度可以分为 上海和大连,从方式角度可以分为跟团和独体桥接模式把这两种分类连接起来可以进行选择。 源代码# -*- coding: utf-8 -*-######################################################## # tour.py# Python impleme原创 2012-12-11 17:14:15 · 1721 阅读 · 0 评论 -
设计模式十九(中介者模式,python语言实现)
基本原理请参考相关资料,这里直接给实例。 基本说明:中介者模式,( 仲裁者、集中控制),隔离了各个对象间的直接耦合 指挥中心分:灾害处理中心(DisasterDealCenter),边境处理中心(FrontierDealCenter) 处理小分队分:警犬巡逻队(SentryA),边境情报对(SentryB),边境缉毒队(sentryC) 小队间是平行级别,需要帮助时原创 2012-12-15 14:45:36 · 1536 阅读 · 2 评论 -
设计模式十八(观察者模式,python语言实现)
基本原理请参考相应书籍,这里直接给实例观察者模式通过主题订阅的形式使得系统两个部分解耦。基本说明本系统由两大部分组成:雷达(subject)和哨所(observer)其中雷达分为: 空域雷达(RadarStationS) 和海域雷达(RadarStationB)哨所分为:指挥本部(SentryO),一号哨所,二号哨所,三号哨所。 指挥本部订阅了这两种雷达信息一号哨所、二原创 2012-12-15 11:04:52 · 1045 阅读 · 0 评论 -
设计模式十七(状态模式,python语言实现)
基本理论请参考相应书籍,这里直接给实例 基本说明:电梯(Context)内部维护着电梯的运行状态,如在几楼等信息。 state是电梯状态的的父类。子类有FloorA(一楼状态),FloorB(二楼状态)FloorC(三楼状态),FloorD(四楼状态) 客户端选择要去的楼层,电梯根据当前的状态决定是需要上行还是需要下行,并判断是否到目的地。原创 2012-12-13 15:43:00 · 1202 阅读 · 0 评论 -
python学习~元类
元类是类的模版,在类的层次上规范类的行为。下面使用元类实现单例设计模式(设计模式九 采用的是另一种方式):from warnings import * class SingletonMeta(type): __instance=None __mutex=threading.Lock() def __init__(原创 2013-05-08 15:51:14 · 861 阅读 · 0 评论 -
设计模式十四(享元模式flyweight,python语言实现)
基本理论请参考相关书籍,这里直接给实例 基本解释:享元模式 ,flyweight, 通过对象单元共享技术实现轻量级。 公司信息CompanyInfo 分为 生成信息ProductionInfo和销售信息SalesInfo。公司老板要求秘书Secretary(享元工厂,这里是信息享元工厂),准备相应信息报表。如果对应信息报表在秘书处没有存档,则秘书要生成新报表,并在秘书处存档原创 2012-12-12 14:03:10 · 1382 阅读 · 0 评论 -
设计模式六(建造者模式,采用python实现)
基本说明同 “设计模式五”,这里直接给实例。可以看出python语言的某种魅力 代码:######################################################## # codes.py# Python implementation of the Class Builder# Generated by Enterprise A原创 2012-12-10 15:45:45 · 665 阅读 · 0 评论 -
设计模式一(简单工厂,采用python实现)
基本理论请直接找书看,这里直接给例子,欢迎大家学习、讨论、或指点改进 刀具是祖先类,铣刀和钻头继承了刀具#文件名 tool.py# -*- coding: utf-8 -*-from __future__ import divisionfrom __future__ import print_functionfrom __future__ im原创 2012-12-07 20:46:53 · 1068 阅读 · 0 评论 -
设计模式二(策略模式,采用python实现)
基本理论请直接找书看,这里直接给例子,欢迎大家学习、讨论、或指点改进刀具、铣刀、钻头类代码和关系同设计模式一相同 在简单工厂的基础上进一步封装(客户端由认识两个类,封装成只认识策略类就可以了)增加策略类#文件名 tool.pyclass StrategyAddFactory(object): def __init__(self,tool_t原创 2012-12-07 20:58:22 · 768 阅读 · 0 评论 -
设计模式十二(组合模式,python语言实现)
基本原理请参考相关书籍。直接给实例组合模式应用在类似组织结构、目录等自包含结构本文给出目录管理的例子 # -*- coding: utf-8 -*-######################################################## # Composite.py# Python implementation of the Class Cli原创 2012-12-12 09:56:30 · 1667 阅读 · 0 评论 -
设计模式三(采用pyside为设计模式一、二增加GUI外衣 )
基本理论请直接找书看,这里直接给例子,欢迎大家学习、讨论、或指点改进 在保证上文代码不变的基础上,增加GUI外衣针对工厂公司增加了用户服务部,用户服务部内部分为铣刀客服组MillForm和钻头客服组DrillForm以及策略服务中心StrategyToolForm#文件名:toolform.py# -*- co原创 2012-12-07 21:54:12 · 864 阅读 · 0 评论 -
设计模式五(建造者模式,采用C++实现)
直接给实例。说明:1.Product 是需要的产品,该产品由两个部件组成,产品本体body和产品外包装case。2.Builder为构建产品的祖先,ConcreteBuilderA,ConcreteBuilderB负责具体构建产品。其中ConcreteBuilderA为构建出口产品,ConcreteBuilderB构建国内市场产品。3.ConcreteBuilderA构建出口产原创 2012-12-10 14:41:15 · 638 阅读 · 0 评论 -
设计模式七(采用pyside实现模式六的GUI)
直接给实例: # -*- coding: utf-8 -*-from __future__ import divisionfrom __future__ import print_functionfrom __future__ import unicode_literalsfrom future_builtins import *import原创 2012-12-10 17:00:17 · 930 阅读 · 0 评论 -
设计模式十三(外观模式,python语言实现)
基本原理请参考相关书籍,这里直接给实例 基本说明:外观模式不改变原有系统的结构,通过组建外观类提供对外交互的复杂工作。 今天上班老板交代两项工作:1.安排人扫雪。2.安派人准备接待参观考察团 公司原有的机构共三个部门A,B,C 为了完成老板安排的任务,我只好充当外观类,安排A原创 2012-12-12 11:22:36 · 988 阅读 · 0 评论 -
设计模式四(装饰模式,采用python 实现)
装饰模式原理请随便找书看一下,这里直接给例子:生产一把刀需要两个工序,工序一和工序二 Process:生产Component:原料(生产刀具的原材料是棒料 bar)Procedure:生产刀具工序FirstProcedure:工序一SecondProcedure:工序二from __future__ import divisionfrom __future__原创 2012-12-09 13:16:57 · 737 阅读 · 0 评论