设计模式篇之 适配器模式 Adapter
目的
适配器模式是一种结构型设计模式,它允许具有不兼容接口的对象进行协作。
问题
假设你正在开发一款股票市场监控应用。该应用从多个来源下载以XML格式存储的股票数据,然后为用户展示美观的图表和图形。
在某个阶段,你决定通过集成一个智能的第三方分析库来改进该应用。但有一个问题:该分析库仅支持JSON格式的数据。

你可以修改该库以支持XML格式,但这可能会破坏依赖该库的现有代码。更糟糕的是,你可能根本无法访问该库的源代码,从而使这种方法变得不可行。
解决方案
你可以创建一个适配器。这是一个特殊的对象,它将一个对象的接口转换为另一个对象可以理解的接口。
适配器会封装其中一个对象,以隐藏幕后发生的复杂转换过程。被封装的对象甚至不知道适配器的存在。例如,你可以封装一个以米和公里为单位进行操作的对象,适配器会将所有数据转换为英制单位,如英尺和英里。
适配器不仅可以将数据转换为各种格式,还可以帮助具有不同