1.三层架构 与MVC设计模式 的目标一致:都是为了解耦合,提高代码复用 区别:二者对项目理解的角度不同2.三层组成:表示层 (USL,User Show Layer;视图层) -前台:对应与MVC中的View:用于和用户交互、界面的显示 jsp js html jquery等web前端技术 代码位 ...
分类:
其他好文 时间:
2020-06-08 23:34:23
阅读次数:
65
桥接模式 1.基本介绍 桥接模式(Bridge)是指将实现与抽象放在两个不同的类层次中,是两个层次可以独立改变 该模式基于类的最小设计原则(扩展功能时尽量少的增加类),通过使用封装、聚合、继承等行为让不同的类承担不同的职责 主要特点是把抽象和行为实现分离开来,从而可以保持各部分的独立性以及对他们的功 ...
分类:
其他好文 时间:
2020-06-08 20:47:44
阅读次数:
63
1.同步模块模式 模块化:将复杂的系统分解成高内聚、低耦合的模块,使系统开发变得可控、可维护、可拓展,提高模块的复用率。 同步模块模式一SMD (Synchronous Module Definition):请求发出后,无论模块是否存在,立即执行后续的逻辑,实现模块开发中对模块的立即引用。 模块化开 ...
分类:
编程语言 时间:
2020-06-08 14:58:41
阅读次数:
76
概述 “行为变化”模式:组件构建过程中,组件行为的变化经常会导致组件本身剧烈的变化。“行为变化”模式将组件的行为和组件本身进行解耦,从而支持组件行为的变化,实现两者之间的松耦合 动机:在软件构建过程中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合——如需要对行为进行“记录、撤销 ...
分类:
其他好文 时间:
2020-06-08 13:05:33
阅读次数:
66
温故而知新,可以为师矣 开场小故事 “大鸟,今天我在公司写了一个窗体程序,当中有一个是‘工具箱’的窗体,问题就是我希望工具箱要么不出现,要么出现一个,可实际上我每单击菜单,实例化‘工具箱’,他就会出现一个,单击多次就会出现多个,你说怎么办?” “哈哈,显然你这个‘工具箱’类也要计划生育啊,不能让他超 ...
分类:
其他好文 时间:
2020-06-08 10:43:38
阅读次数:
59
概述 属于结构型模式 提供代理作为对象的替代品或其占位符,代理控制对原对象的访问,并可对请求在提交给对象前后进行一些处理 由于某种原因(如对象创建开销很大,某种操作需要安全控制,或者需要进程外访问等)直接访问会给使用者或者系统结构带来很多麻烦 如何在不失去透明操作对象的同时来管理 / 控制这些对象特 ...
分类:
其他好文 时间:
2020-06-08 00:42:40
阅读次数:
73
概述 缓存、Cache、Flyweight 属于结构型模式 不在每个对象中保存所有数据,而是共享多个对象所共有的相同状态,实现在有限的内存中载入更多的对象 在软件系统采用纯粹对象方案的问题在于大量细粒度的对象会很快充斥在系统中,从而带来很高的运行(内存)代价 如何在避免大量细粒度对象问题的同时,让外 ...
分类:
其他好文 时间:
2020-06-08 00:20:33
阅读次数:
54
from abc import ABCMeta, abstractmethod from operator import itemgetter, attrgetter # 策略模式:三个角色:上下文环境、策略的抽象、具体的策略 # 简而言之:定义一系列算法,将每个算法都封装起来,并且使他们之间可以相 ...
分类:
其他好文 时间:
2020-06-07 23:03:55
阅读次数:
109
深入理解:设计模式中的七大原则 一、单一原则 概念理解: 1个类只负责一个功能领域中的相应职责。 二、开闭原则(目标) 概念理解: 抽象是开闭原则的关键。 怎么做: 面向接口、抽象类机制编程 三、里氏代换原则(基础) 概念理解: 开闭原则的最重要实现方式之一;所有引用基类的地方必须能透明的使用其子类 ...
分类:
其他好文 时间:
2020-06-07 21:27:31
阅读次数:
100
设计模式中的关系总结 在软件系统中,类并不是独立存在的,类与类之间存在各种关系,对于不同类型的关系,UML提供了不同的表示方式。现在来总结梳理下: 一、关联关系 类与类之间最常用的一种关系,是一种结构化的关系,用实线连接有关联关系的对象所对应的类。java中,常将一个类的对象作为另一个类的成员变量。 ...
分类:
其他好文 时间:
2020-06-07 21:09:58
阅读次数:
63