我正在编写一个网络应用程序,我想知道未来的升级以及webapp的升级将如何影响用户体验。
特别是,我想知道Google这样的公司是如何解决这个问题的。例如,我看过几个例子,其中特定的谷歌应用程序将询问用户是否要升级到“新的谷歌文档”或类似的。这是我想提供的经验,但我不确定如何去做。如果重要,我正在编写一个使用backbone.js的应用程序,并且有一个沉重的JS客户端组件。我已经看过几个讨论关于REST组件或WebServices组件版本化的讨论,但没有讨论实际的客户端代码或后端组件(当然,如果它只是在版本化的Web服务之后,后端可能并不重要)
从应用程序角度和(可能)后端数据库角度来看,我对他们如何实现这一目标很感兴趣。
所以似乎有几个问题。
也可能还有其他一些考虑因素。
答案 0 :(得分:0)
这非常复杂,特别是在Google Docs中进行协作时,您希望文档的不同版本彼此兼容。 因此,您可以决定不在每个主要版本之前更改数据库,然后将所有人移动到新版本的应用程序,或者制作可以将数据从一个版本转换为另一个版本(以及向后版本)的“转换器”并保留不同的数据库同步,同时接受来自不同“app”版本的数据。
管理这种情况的“最简单”方法是使用事件日志,甚至使用CQRS,这些模式可以让您以这种方式更好地管理数据。
但是在实现这样的事情之前我会三思而后行。 你真的需要吗? (巨大的?)成本是否适合(微小?)的好处? 你在这个阶段需要吗?