【发布时间】:2014-02-14 17:55:13
【问题描述】:
我正在编写一个“主”API 调用,它从不同的供应商那里提取相同的信息。
例如,假设有 2 个供应商,我可以访问他们各自的 REST API 以从用户 Jane 那里提取朋友列表:
供应商 1 给了我 一些 来自 Jane 的朋友。
供应商 2 还给了我 一些 来自 Jane 的朋友,但是供应商 2 给我的朋友列表可能(或可能不)与供应商 1 给我的朋友列表不同。
我需要编写一个脚本,从两家供应商那里提取列表,合并它们并从中删除重复项。
我正在考虑使用策略模式来实现这一点,这样我就可以在运行时交换 API 调用实现,但我想知道这是否适合这种模式。
如果不是,那么哪种设计模式可以让我拥有可变数量的 API 调用实现,并让我在需要加班时添加更多?
我打算使用的语言是 PHP,如果这会影响您的回答。
【问题讨论】:
-
去做吧,重要的是有一个解决方案,最好是 SOLID 代码。如果您不确定它已经是一个好的解决方案,请不要考虑应该使用哪些模式。模式的名称,或者即使您正在使用它也无关紧要。
-
别听@MikeSW :) 在现实世界中,您通常不会看到以其模式命名的东西,但好的代码通常确实符合标准设计模式,因此绝对值得考虑这一点……尽管在您完成一段时间后,它会成为第二天性,不会成为您明确停下来反思的事情。
标签: design-patterns