系统设计:“ DMV”类型应用程序的服务器驱动流程

时间:2018-11-14 04:01:09

标签: client-server system-design

我想创建一个可以交付给用户并在几个月内更新一次的应用。该应用程序将包含一个“应用程序”流程,类似于一个人填写DMV的流程。该应用程序将通过JSON负载与后端服务器(我将托管)进行通信。

要求: - Business logic to live in the backend server (where I would have more control) - The app will be driven by the backend server, ie the backend server will tell the app exactly what to do. - I would like to like collect information if users start "application" and where they are in the process. - "Application" pages must be completed in specific order (order should be defined in the backend server)

我正在考虑的当前方法如下:

将应用设计为模板渲染器。它将为“应用程序”的每个页面提供一堆模板。用户单击后,将在应用程序内启动“应用程序”,后端服务器将告知应用程序呈现哪个模板。 例如,用户单击“启动应用程序”,应用程序将向后端服务器发送请求以创建新的“应用程序”,后端服务器将在数据库中创建应用程序,并告诉应用程序下一步是“收集用户的地址”。此步骤将与应用程序中的模板相对应,该应用程序将呈现给用户,收集用户的家庭住所并将数据发送回后端服务器(以及“应用程序” ID),依此类推,直到应用程序完成为止。用户。 (在后端,应用程序将具有状态机,以确保按顺序完成应用程序)

我觉得这种方法有利有弊。

解决此类问题的设计模式有哪些? 我也阅读了超媒体方法,我很喜欢它,但是问题在于应用程序中的每个页面都是一个网页,我不一定喜欢。

0 个答案:

没有答案