七、观察者模式 观察者模式是指被观察者的状态发生改变时,系统基于事件驱动理论将其状态通知到订阅其状态的观察者对象中,以完成状态的修改和事件传播。 在观察者模式中,观察者和被观察者是抽象耦合的,两者之间建立了一套事件触发机制,以降低二者的耦合度。 观察者模式具体UML: (1)定义抽象主题Subjec ...
分类:
其他好文 时间:
2019-12-31 23:14:25
阅读次数:
77
1.性能影响 大型互联网项目或者分布式项目,进行更新操作时,会在影响数据库性能 2.热更新 如果数据库存在外键,会导致新更新上去的代码无法运行,可能产生冲突,需要重新启动项目 3.降低耦合度 删除外键是指物理上删除外键,但是逻辑上还是存在外键的,这样就降低了表与表之间的耦合度(举个例子:用户表与用户 ...
分类:
数据库 时间:
2019-12-26 09:17:13
阅读次数:
125
1、promise的起源 在之前,我们处理异步网络请求的时候,往往会采用这样的写法:再复杂一点,我们需要在请求完第一个api后,再去请求第二个接口,那么就变成这样了:基于此,在需求增加的情况下,我们很可能会面临一场灾难性的到来--回调地狱。造成的后果是:1、代码庞杂臃肿,可读性极差2、耦合度过高,难... ...
分类:
其他好文 时间:
2019-12-23 22:24:25
阅读次数:
82
废话少说,直接上工程目录 对应的UML图 代码: package com.waibizi; /** * 聚合表示的是整体与部分的关系,表示整体与部分是可分开的。聚合关系在类的六大关系中,排行的是第三。再重复一次顺序:设计模式中类的关系:依赖、关联、聚合、组合、继承、实现。耦合度依次递增 * @aut ...
分类:
其他好文 时间:
2019-12-21 15:49:47
阅读次数:
115
开发逻辑方面 问答模块比较典型,内容的逻辑比较混乱没有整理出清晰的思路, 开发时什么情况出现的结果 一对多 还是 一对一的情况,没有提前理好,以及代码叠加的情况也没整理好,不利于代码维护和更新各种情况和代码耦合度太大,逻辑情况也太多了。代码里各种写法搞得逻辑太复杂,导致性能下降。 (可能需要重新理一 ...
分类:
微信 时间:
2019-12-19 15:58:15
阅读次数:
116
开发模型 开发模型是软件工程中指导开发的开发思想、开发体系。 经典模型-瀑布模型 最初始的模型,上个世纪七十年代提出,盛极一时,全球百分之九十的项目都用瀑布模型。 软件计划、需求分析、软件设计、程序编码、软件测试、运行维护。每个阶段都会有输出产物,是一个很经典的模式。但是每个阶段都依赖于上一阶段,不 ...
分类:
其他好文 时间:
2019-12-17 13:37:06
阅读次数:
103
什么是IoC和DI IoC(Inversion of Control 控制反转):是一种面向对象编程中的一种设计原则,用来减低计算机代码之间的耦合度。其基本思想是:借助于“第三方”实现具有依赖关系的对象之间的解耦。 DI(Dependence Injection 依赖注入):将实例变量传入到一个对象 ...
分类:
编程语言 时间:
2019-12-15 14:09:55
阅读次数:
87
前后端不分离 在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制,由后端渲染页面或重定向,也就是后端需要控制前端的展示,前端与后端的耦合度很高。 这种应用模式比较适合纯网页应用,但是当后端对接App时,App可能并不需要后端返回一个HTML网页,而仅仅是数据本身,所以后端原本返回网页的接口 ...
分类:
其他好文 时间:
2019-12-10 18:31:43
阅读次数:
101
转自 https://segmentfault.com/a/1190000006749441 在J2EE项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的、不可预知的异常需要处理。每个过程都单独处理异常,系统的代码耦合度高,工作量大且 ...
分类:
编程语言 时间:
2019-12-08 20:13:44
阅读次数:
100
1. IOC定义 Inversion of Control,减低计算机代码间的耦合度,对象的创建交给外部容器完成,不用再new了 2. 流程 2.1 创建Bean对象 2.2 配置 applicationContext.xml 2.3 通过容器获取Bean对象 3. 其他细节 3.1 带参构造函数创 ...
分类:
编程语言 时间:
2019-12-03 23:16:49
阅读次数:
77