定义: 适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 结构: Target:目标接口,定义与客户端交互相关的接口,目标可以是具体的或抽象的类,也可以是接口。 Adaptee:源接口,需要适配的 ...
分类:
Web程序 时间:
2020-10-21 21:20:30
阅读次数:
32
一、六大设计原则 1、单一职责原则 【Single Responsibility Principle】 保证类的职责要单一。 应该有且仅有一个原因引起类的变更。 好处: 类的复杂性降低 可读性提高 可维护性提高 比那更引起的风险降低 2、里氏替换原则 【Liskov Substitution Pri ...
分类:
其他好文 时间:
2020-10-21 20:26:08
阅读次数:
18
大家好,欢迎来到设计模式专题,我们的主旨是介绍一些有趣好玩的设计模式。 今天我们介绍的设计模式叫做命令模式(command),在这个模式下,我们可以实现do和undo的解耦,让使用方不用关心内部的实现细节。 command模式 这个模式我们在日常当中经常使用,举一个很简单的例子,比如说我们发布代码。 ...
分类:
其他好文 时间:
2020-10-18 16:14:47
阅读次数:
25
今天在这分享目前国内公司Java面试常问的问题包括JVM、常用的算法和数据结构,redis缓存,分布式,Spring,微服务等。正所谓知己知彼,只有体系知识巩固,面对不断更新的技术才能快速掌握,同时在面试、工作中也更能脱颖而出! 由于篇幅原因,在这答案就不做全部展示了,这些题我已经整理成pdf文档免 ...
分类:
编程语言 时间:
2020-10-16 10:42:00
阅读次数:
22
在程序员编写代码时候其实需要考虑到很多问题:可用性(完整的达到业务目的)健壮性(程序在各种环境各种操作都能保证正常的运行)复用性(代码能够被别的模块调用来达到不同的目的,这里一定程度上有解耦的思想)可扩展性(代码设计足够灵活,能够适应尽可能多的业务)性能内存占用(在我理解里性能与内存占用往往两难全,性能的提升,往往代表内存的更多占用。比如动态数组ArrayList为了避免频繁的扩容,会进行1.5倍
分类:
编程语言 时间:
2020-10-14 20:49:30
阅读次数:
47
简介 双重检测锁定模式是一种设计模式,我们通过首次检测锁定条件而不是实际获得锁从而减少获取锁的开销。 双重检查锁定模式用法通常用于实现执行延迟初始化的单例工厂模式。延迟初始化推迟了成员字段或成员字段引用的对象的构造,直到实际需要才真正的创建。 但是我们需要非常小心的使用双重检测模式,以避免发送错误。 ...
分类:
编程语言 时间:
2020-10-14 20:19:17
阅读次数:
27
选择 冒泡排序过程,插入排序移动次数,快速排序二轮划分 chmod命令 死锁出现的情况 八进制乘法 设计模式判断 白盒测试用于(单元测试) SQL建立存储的过程 操作系统分区管理 LRU/OPT算法缺页次数 UDP/TCP TCP报文首部(看一条,哪部分是哪部分) 进程调度算法 前序+中序->后序 ...
分类:
其他好文 时间:
2020-10-14 19:59:50
阅读次数:
18
模板方法模式&观察者模式&责任链模式 模板方法模式 Template Method 模式定义: 定义一个操作的算法骨架,而将一些步骤延迟到子类中。Template Method 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤 1 public class TemplateMethod ...
分类:
其他好文 时间:
2020-10-12 20:04:32
阅读次数:
17
大多数时候我都是写一些业务代码,可能一堆CRUD就能解决问题,但是这样的工作对技术人的提升并不多,如何让自己从业务中解脱出来找到写代码的乐趣呢,我做过一些尝试,使用设计模式改善自己的业务代码就是其中的一种。
分类:
其他好文 时间:
2020-10-09 20:56:46
阅读次数:
19
虽然我们都知道有20多个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。 Mybatis至少遇到了以下的设计模式的使用: Builder模式,例如SqlSessionFactoryBuild ...
分类:
其他好文 时间:
2020-10-08 19:17:18
阅读次数:
14