如题,昨天在折腾 websocket 的 demo,折腾好了以后想做点什么项目
web 聊天好像没啥意思,然后想了想似乎做一个多人协同在线编辑文档不错。 有一个技术上的问题想不明白就是,多人同时连线到一个文档,ws 发送到同步服务器的内容肯定是增量更新,不可能编辑一个大文档把整个文档都发过去,所以快速地查找到哪里修改了些什么是前端必须要做的,
简单想了一下算法,想不太懂。之前用过 beyond compare 那种对比软件,可以光速查找出来两个文档的差异,还有 github 上也是,之前就不太懂是怎么做的。 我想比如你用 lsc,虽然可以 dp 优化,但复杂度仍然是 O(m^2),一万字的文档时间复杂度是一亿,实在是太过匪夷所思,基本上可以确定 github 和 beyondcompare 不是这么实现的。
那么到底咋做啊? 求教求教