好像是一回事:适配器和代理模式

简介:
1、 适配器模式
“适配器”,顾名思义,就是将一个类的接口转换成另外一个接口,使得原本由于接口不兼容不能一起工作的那些类一起工作。在软件开发中,系统的数据和行为都正确,但接口不符时,我们应该考虑适配器。举例来说,我们高中都学习过中文版的《论语》(里的几段著名的话),假如现在到了大学后,英语老师要我们学英文版的《论语》,以前学中文版的时候是看中文书,现在学英文版的,当然要看英文书(注意这里的英文书是实实在在 存在了的),所不变的就是继续听“子曾经曰过”什么什么了。好了,Code is cheap.让代码说话:
Code
适配器模式的使用通常都在软件开发后期或者维护阶段,因为没有哪个开发团队在开发初期愿意把类似的功能类的接口设计的不同,通常都是会先考虑通过重构统一接口。所以这个模式在开发初期应尽量避免使用。
2、 代理模式
代理就是真实对象的代表。”代理模式“为其他对象提供一种代理以控制对这个对象的访问。代理模式其实就是在访问对象时引入一定程度的间接性,因为这种间接性,可以附加多种用途。
举例来说,我们高中都学习过中文版的《论语》(里的几段著名的话),现在到了大学后,我们求知欲望强烈^_^,很想学习英文版的《论语》,以前学中文版的时候是看中文书,现在学英文版的,当然要看英文书,可是国内没有质量过关的英文版《论语》(或者不权威,我们自己也可以翻译出来^_^)。这时候国外有汉学专家翻译了《论语》,可是版权控制的很严格,我们直接买不到,这个时候有一个出版社被授权在国内出版这本书,这样我们就可以看到原滋原味的外国人翻的《论语》了。现在就来看看英文的“子曾经曰过”什么什么了。上代码:
Code
上面代码中的Proxy和本例中(现实中)的出版社的用途还是有很大的区别的,这里只是举个例子,不妥之处望留意。






本文转自JeffWong博客园博客,原文链接:http://www.cnblogs.com/jeffwongishandsome/archive/2009/04/14/1412433.html,如需转载请自行联系原作者
目录
相关文章
|
5天前
|
人工智能 运维 安全
|
3天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
10天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
848 109
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
482 12
|
4天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
5天前
|
机器学习/深度学习 传感器 算法
Edge Impulse:面向微型机器学习的MLOps平台——论文解读
Edge Impulse 是一个面向微型机器学习(TinyML)的云端MLOps平台,致力于解决嵌入式与边缘设备上机器学习开发的碎片化与异构性难题。它提供端到端工具链,涵盖数据采集、信号处理、模型训练、优化压缩及部署全流程,支持资源受限设备的高效AI实现。平台集成AutoML、量化压缩与跨硬件编译技术,显著提升开发效率与模型性能,广泛应用于物联网、可穿戴设备与边缘智能场景。
188 127