博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式之(Adapter)适配器模式
阅读量:7032 次
发布时间:2019-06-28

本文共 463 字,大约阅读时间需要 1 分钟。

1.需求

有个环境监测系统用于获取环境的各种数据并显示,包括温度、湿度、紫外线等。原来使用的是月亮(Moon)公司的温度传感器,但是这家公司的传感器经常测的数据不正确,于是领导要把传感器换成市场上最好的传感器厂商太阳(Sun)公司的温度传感器。现在需要你去做修改程序以接入Sun公司的温度传感器。(注:Moon公司传感器的获取温度的接口是GetTemperature,Sun公司获取传感器的接口是GetTemp)。

2. 分析

监测系统很多地方都用到Moon公司传感器GetTemperature接口,如果直接替换成GetTemp的话,势必引起整个系统的重新编译,而且还需要仔细检查所有的GetTemperature是否已经被替换。为了不引起大的改动,我们将Sun公司的传感器封装成Moon公司一样的接口,则可以解决这个问题。

3. 类图

4. 总结

Adapter主要用于接口转换,同时可以解耦客户代码和执行请求的目标对象。

转载于:https://www.cnblogs.com/key000/p/4111580.html

你可能感兴趣的文章
【Java 容器面试题】谈谈你对HashMap 的理解
查看>>
分组圆角TableView
查看>>
高级Java研发者在解决大数据问题上的一些技巧
查看>>
用 Node 开发一个命令行版本词典--不到十行的代码
查看>>
支持多解码模块的安卓视频播放器AndroidVideoplayer
查看>>
TCP协议详解
查看>>
Node.js process 模块解读
查看>>
Lodash源码分析-compact.js
查看>>
度小满牵手南京银行打造”AI鑫”计划:银行零售业掀起变革运动
查看>>
微信小程序之分享海报生成
查看>>
敏捷AI|NLP技术在宜信业务中的实践「背景篇」
查看>>
布局结束检测工具
查看>>
[MetalKit]21-What's-new-in-graphics-and-games-at-WWDC-2016
查看>>
html2canvas在vue下的巨坑
查看>>
从设计师和开发的角度使用 lottie
查看>>
iOS之自定义tabBar
查看>>
Spring boot学习(三) Spring boot整合mybatis
查看>>
Redux 源码深度解析(附带视频1月14号上传)
查看>>
理解webpack原理,手写一个100行的webpack
查看>>
Node.js & Express 项目基本搭建
查看>>