我即将设计我的 Web 服务 API,我的 API 的大部分功能基本上与我的 Web 应用程序非常相似。
现在的问题是,我应该创建 1 个单一方法并将它们用于 Web 应用程序和 Web 服务 api 吗?(这似乎是合乎逻辑的解决方案,但它非常复杂;复制 Web 应用程序使用的方法要容易得多,并将两者分开,即一种方法用于 Web 应用程序,一种方法用于 Web 服务。)
你们是怎么做到的?
1)重用:一种主要方法,并将它们重用于Web应用程序和Web服务应用程序(我喜欢这个,但它很复杂)
- WebAppMethodX --uses--> COMMONFUNCTIONMETHOD_X
- APIMethodX ---使用----> COMMONFUNCTIONMETHOD_X
即 Commonfunctionmethod_x 包含可重用的通用特性集
PRO:更少的代码,更少的维护,更少的错误。
缺点:非常复杂
2) DUPLICATE:两种方法,一种用于Web 应用程序,一种用于Web 服务。
- WebAppMethodX
- API方法X
优点:简单
缺点:重复 = 更多代码、更多维护、更多错误!