利用智能操作对源代码的协作编辑制造技术

技术编号:24693907 阅读:73 留言:0更新日期:2020-06-27 12:44
提供其中所有者计算机系统和参与者计算机系统都是成员的协作会话。在该会话内工作的同时,参与者计算机系统被提供对被本地存储在所有者计算机系统上的多文件工作空间的访问。所有者计算机系统接收被定向到多文件工作空间的请求。这里,该请求源自于参与者计算机系统。响应于该请求,所有者计算机系统处理请求并且然后将响应返回给参与者计算机系统。

Cooperative editing of source code with intelligent operation

【技术实现步骤摘要】
【国外来华专利技术】利用智能操作对源代码的协作编辑
技术介绍
计算机和计算系统已经影响了现代生活的几乎每个方面。例如,在工作、娱乐、保健、交通等中通常涉及计算机。计算机通过执行可执行指令集(即代码)来操作。这些指令由开发者在开发环境中创建以便创建应用。在许多情况下,开发者为了改进计算机的操作并移除代码中存在的任何缺陷(bug)将生成代码的许多不同版本。一旦指令被编译、解译和/或构建,底层的计算机系统就执行指令以提供应用的功能性。已经创建了不同的工具来辅助开发者编写、编辑、测试和调试应用的可执行指令。这些工具中的一些包括程序代码文本编辑器、源代码编辑器、调试器、以及集成的开发环境(IDE)(仅举几例)。生成和调试代码的过程可以通过其他开发者的参与来改进。例如,通过在一个团队里一起工作,团队成员能够共同地协作以审查和改进项目。本文中所要求保护的主题不限于解决任何缺点或仅仅在诸如以上描述的那些环境中操作的实施例。相反,提供此背景以说明本文中描述的一些实施例可以被实践于其中的仅仅一个示例

技术实现思路
本文中描述的实施例中的至少一些实施例涉及建立协作会话使得多个协作者能够共同编辑源代码。例如,其中所有者计算机系统和参与者计算机系统都是成员的协作会话被建立。在该协作会话内,参与者计算机系统被提供对被存储在所有者计算机系统上的多文件工作空间的访问。另外,所有者计算机系统能够从参与者计算机系统接收请求。这里,请求被定向到多文件工作空间。作为响应,所有者计算机系统处理请求并且然后将响应返回给参与者计算机系统。以这种方式,所有者计算机系统和参与者计算机系统能够在多文件工作空间上共同操作。如稍后将更详细地讨论的,所公开的实施例提供许多益处。然而,通过简要的介绍,所公开的实施例显著改进计算机系统的总体效率,因为需要更少的数据被存储在其上。另外,所公开的实施例还使得多个操作能够与彼此同步。因此,通过所公开的实施例的实践,针对工作空间做出的协作编辑将被显著改进。本
技术实现思路
不旨在确定所要求保护的主题的关键或必要特征,也不旨在用作确定所要求保护的主题的范围的辅助。相反,本
技术实现思路
被提供从而以简化的形式介绍一系列概念。下面在具体实施方式中更充分地描述这些概念。附图说明为了描述以上所述的优点和特征以及其他优点和特征可以被获得的方式,各种实施例的更具体的描述将通过参考附图来呈现。在理解这些附图仅仅描绘样例实施例并且因此不被认为限制的情况下,实施例将利用通过对附图的使用的附加的特异性和细节来描述和解释,在附图中:图1图示了计算机系统的总体视图。图2提供了协作会话可以如何被发起的示例描绘。图3图示了协作者可以具有的各种形式和特性。图4图示了可以用于促进协作会话的示例架构。图5示出了集成组件如何能够配置客户端应用的用户界面使得其包括协作选项。图6A图示了客户端应用如何能够访问参与者计算机系统上的本地文件。图6B图示了客户端应用的通信如何可以被拦截并重新路由。图7展示了所有者计算机系统如何能够处理由参与者计算机系统提交的请求。图8展示了多文件工作空间如何可以变得能够由参与者计算机系统访问。图9展示了所有者计算机系统的工具如何可以变得能够由参与者计算机系统访问。图10图示了多个协作者正在编辑源代码的主体的示例情景。图11图示了多个协作者正在编辑源代码的主体的另一示例情景。图12图示了协作者能够独立地操作在多文件工作空间的不同文件上的情景。图13图示了用于使得多个协作者能够独立地编辑源代码的主体的示例方法。图14图示了用于使得协作者能够独立地编辑源代码的主体的另一示例方法。具体实施方式本文中描述的实施例中的至少一些实施例涉及建立协作会话使得多个协作者能够共同编辑源代码。例如,其中所有者计算机系统和参与者计算机系统都是成员的协作会话被建立。在该协作会话内,参与者计算机系统被提供对被存储在所有者计算机系统上的多文件工作空间的访问。另外,所有者计算机系统能够从参与者计算机系统接收请求。这里,请求被定向到多文件工作空间。作为响应,所有者计算机系统处理请求并且然后将响应返回给参与者计算机系统。以这种方式,所有者计算机系统和参与者计算机系统能够在多文件工作空间上共同操作。所公开的实施例的优点在于:它们允许“所有者协作者”(或简称为“所有者”)甚至当外部协作者(在后文中也被称为“参与者协作者”或简称为“(多个)参与者”)与所有者连接在“协作会话”中时保持在他/她的多文件工作空间的控制中。这里,术语“所有者”可以指代“人类所有者”或“所有者计算机系统”。类似地,术语“参与者”可以指代“人类参与者”或“参与者计算机系统”。相比之下,“所有者计算机系统”和“参与者计算机系统”仅仅指代计算机系统并且不包括人类操作者。附加地,“协作者”指代已经连接了协作会话的任何实体(例如,所有者或参与者),而“协作者”指代协作会话中的实体中的一些或全部(例如,所有者和全部的参与者)。如还在本文中所使用的,“多文件工作空间”是通过与彼此交互而共同地操作的多个文件的组合(assembly)。作为示例,代码开发项目可以包括源代码的多个文件,其在被执行时一起操作以执行复杂的功能。因此,代码开发项目可以被认为是多文件工作空间。多文件工作空间的其他示例包括但不限于,文本文件和/或文字处理文件(例如,其中文件经由内容表或某个其他链接单元而被链接),或者其中多个数据源被一起连接的任何其他内容。多文件工作空间的又一非限制性示例是被配置为从多个实体接收编辑和/或markdown的基于wiki的工作空间。因此,从本公开,将认识到,实施例能够关于任何种类的多文件工作空间进行操作。为简洁起见,并且仅通过示例的方式,本公开的剩余部分将关注包括源代码的多个文件的多文件工作空间。这里,还值得注意的是,如本文中所使用的“协作会话”是所有者计算机系统与一个或多个参与者计算机系统连接以便在多文件工作空间上共同协作的事件。在该协作会话期间,参与者计算机系统被提供对被本地存储在所有者计算机系统上的多文件工作空间的访问。以这种方式,参与者不需要下载多文件工作空间。代替地,参与者计算机系统用作无头(headless)单元,因为与在参与者计算机系统中的每个上进行相反,编辑和其他操作可以在所有者计算机上被执行。值得注意的是,协作会话可以出于各种各样的原因被发起。例如,在一些情况下,协作会话可以被建立使得参与者可以帮助所有者执行特定功能。例如,如果协作涉及调试,则所有者可能是负责生成代码的主要人员,而参与者可以是帮助所有者调试该代码的其他开发者。在学习环境中,所有者可以是学生,参与者可以是教师。在备选学习环境中,教授可以是所有者,他/她的学生可以是参与者。在这样的情景中,教授能够指导他/她的学生演示工作空间如何操作。在该上下文中,所有者能够保持在他/她的多文件工作空间上的管理控制。又一示例情景包括其中面试官建立工作空间环境(例如,编码环境)的编码面试过程。这里本文档来自技高网
...

【技术保护点】
1.一种所有者计算机系统,包括:/n一个或多个处理器;以及/n一个或多个计算机可读硬件存储设备,其上存储有计算机可执行指令,所述计算机可执行指令被构造为由所述一个或多个处理器可执行以由此使所述所有者计算机系统:/n发起协作会话,在所述协作会话中,所述所有者计算机系统和参与者计算机系统都是成员;/n使多文件工作空间能够由所述参与者计算机系统访问,所述多文件工作空间被本地存储在所述所有者计算机系统上;/n接收被定向到所述多文件工作空间的请求,所述请求源自于所述参与者计算机系统;以及/n处理所述请求并且将响应返回给所述参与者计算机系统。/n

【技术特征摘要】
【国外来华专利技术】20171114 US 62/585,988;20180124 US 15/879,2611.一种所有者计算机系统,包括:
一个或多个处理器;以及
一个或多个计算机可读硬件存储设备,其上存储有计算机可执行指令,所述计算机可执行指令被构造为由所述一个或多个处理器可执行以由此使所述所有者计算机系统:
发起协作会话,在所述协作会话中,所述所有者计算机系统和参与者计算机系统都是成员;
使多文件工作空间能够由所述参与者计算机系统访问,所述多文件工作空间被本地存储在所述所有者计算机系统上;
接收被定向到所述多文件工作空间的请求,所述请求源自于所述参与者计算机系统;以及
处理所述请求并且将响应返回给所述参与者计算机系统。


2.根据权利要求1所述的所有者计算机系统,其中发起所述协作会话包括:使用基于云的中继服务来发起在所述所有者计算机系统与所述参与者计算机系统之间的通信链接。


3.根据权利要求1所述的所有者计算机系统,其中驻留在所述所有者计算机系统上的协作代理管理一组基本服务,并且使所述一组基本服务中的每个服务可用于由所述所有者计算机系统和所述参与者计算机系统两者使用,由此运行在所述所有者计算机系统上的服务可用于由所述参与者计算机系统使用。


4.根据权利要求1所述的所有者计算机系统,其中所述计算机可执行指令的执行还使所述所有者计算机系统:
实例化所述所有者计算机系统上的客户端应用,其中所述客户端应用包括用户...

【专利技术属性】
技术研发人员:C·E·兰茨J·P·卡特S·卡尔维特D·E·皮尤G·詹金斯D·利博K·肖姆甘
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1