我有一个逻辑问题:我试图找出管理与应用程序不同步的API的最佳方法。解释它最好的办法是用一个例子:管理iOS客户端/服务器应用程序更新的最佳方式
比方说MyApp的1.0版的帖子到需要名字,姓氏和电子邮件“submit_feedbacK” API。
然后,我将MyApp 2.0版提交给App Store。该版本旨在将first_name,last_name,gender和email发布到API。所有这些都是API的必填字段。
的问题,我有: - 如果我更新的API之前,新的应用程序是活的,这将打破1.0版 - 如果我等到2.0版是现场和远程削弱1.0,我必须要合理地安排它。
我会猜测'正确的答案'是维护两个不同的API。但是,如果两个API发布到同一个实时数据库,那会让事情变得有些尴尬。
有没有人有如何建模的建议?
我相信总体思路是尝试设计API和数据库结构它不会需要一段时间的突破性变化,以最大限度地减少总的尴尬。如果“性别”的价值在1.0的整个生命周期中不是绝对必要的,那么你也许可以在没有更新但尚未在版本转换期间提交它的用户的情况下做到这一点。 – millimoose
确实如此 - 如果没有提供值,新字段也可以默认为“男性”,因为传统应用程序不会提供该值。我想我更关心复杂的变化,就像一个概念需要重新接近一样。但正如你所说,如果重大改变很少见,其余的可能会通过停工通知来解决。我也只记得可以选择应用程序何时上线,这样可以帮助控制更新。无论如何,感谢您的反馈! – Anthony