我正在开发一个web项目(PHP,jQuery),该项目目前正在使用Google来支持应用程序的地图功能,但是我们需要让它成为多平台,就像您可以访问仪表板,从5-10个地图提供商( Goolge只是其中之一)中选择一个到您的地图功能的底层。
因此,由于应用程序应该在地图上显示数据,所以几乎在每个地方我们都必须处理该特定地图提供者提供的API。目前,我们正在考虑修改我们的模块化结构和/或为每个提供程序制作一个适配器,以处理它们的本机语法,但通过我们的标准方法。
我希望有你的想法和你的经验,特别是如果你曾经做了一个界面,通过2-3个不同的地图提供商。这会有很大帮助,我真的很感激。
如果您需要进一步的信息,请让我更新这个问题。
正如Vicky Chijwani所建议的,现在我还想知道哪一个更好(利弊),在Javascript或PHP上实现了适配器?
发布于 2012-10-16 09:22:17
对于这种情况,适配器策略听起来足够好,即定义一个公共接口,然后继续为每个提供程序实现该接口。要使用哪个映射提供程序的选择可以是设置中的可配置选项。
请参见地图,这是一个JavaScript库,它为包括谷歌、必应、雅虎和OpenStreetMap在内的几个地图提供商提供了一个通用界面。它是在BSD许可下获得许可的。
据我所见,在服务器端而不是在JavaScript上实现适配器没有好处。事实上,使用JavaScript会更好,因为它是web中无处不在的语言;如果将来您决定使用另一种技术重写后端,则不必重写适配器。
如果您不太愿意使用JavaScript,因为您没有足够的经验,即使这样,我的建议也将保持不变,因为每一个现代的、以客户为中心的web应用程序都要求您对它感到舒服。
此外,您正在获得一个成熟的、经过测试的JavaScript适配器库--具有相当许可的BSD许可证--以Mapstraction的形式,我在前面提到过,所以如果您可以使用它,这是一个非常好的选择。不管怎样,我认为JavaScript是适合你的方式。
https://softwareengineering.stackexchange.com/questions/170078
复制相似问题