背景:我想创建一个类似于记事本的应用程序,其中多个人可以编辑一个文档/记事本。我已经创建了图形界面,现在想开始研究它的多用户协作部分。
问题:如何从一个客户的文本框中获取文本,然后转到另一个客户的文本框中。我会使用 socket 吗?我将在哪里存储将与所有客户端共享的文本?为了创建可运行的实时协作文本框,我必须使用/做些什么。我可以从哪个好的出发点进行研究?
示例:Etherpad.com/Titanpad.com/Piratepad.com或Docs.Google.com(除非我要创建桌面应用程序,而不是网站)
解决答案中出现的一些问题:
用户如何选择要编辑的文档:是
用户如何创建新文档:通过在主菜单中选择“新建文件”选项
如果许多用户尝试一次编辑同一文档,会发生什么情况? :他们都可以编辑文档。
用户是否需要单击“保存”按钮才能反射(reflect)出更改? :否,更改应同时反射(reflect)
用户需要登录吗? : 是的
任何人都可以编辑任何文档,或者有访问限制吗? :有限制,即。文档创建者可能会阻止用户编辑文档。
最佳答案
寻找解决方案的第一步是足够详细地定义所需的最终结果。而不是仅考虑多用户协作部分,而是尝试描述整个用户体验:
通过考虑这些设计决策,您最终将遇到一些具体的实现问题,然后可以尝试回答这些问题。