CN111367561B - 软件程序远程开发方法及装置 - Google Patents

软件程序远程开发方法及装置 Download PDF

Info

Publication number
CN111367561B
CN111367561B CN202010240381.6A CN202010240381A CN111367561B CN 111367561 B CN111367561 B CN 111367561B CN 202010240381 A CN202010240381 A CN 202010240381A CN 111367561 B CN111367561 B CN 111367561B
Authority
CN
China
Prior art keywords
user
working space
development
remote development
remote
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010240381.6A
Other languages
English (en)
Other versions
CN111367561A (zh
Inventor
陆新龙
周文泽
王磊
吴冕冠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010240381.6A priority Critical patent/CN111367561B/zh
Publication of CN111367561A publication Critical patent/CN111367561A/zh
Application granted granted Critical
Publication of CN111367561B publication Critical patent/CN111367561B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例提供一种软件程序远程开发方法及装置,方法包括:接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作;本申请能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。

Description

软件程序远程开发方法及装置
技术领域
本申请涉及数据处理领域,具体涉及一种软件程序远程开发方法及装置。
背景技术
现有的开发模式,一般是在开发人员本地的个人电脑上搭建开发环境,在正式开发代码前,需要配置系统环境、安装开发工具、拉取项目代码、安装依赖等操作。这些操作,任何一步的差异,都可能导致环境的不一致,从而导致生产上线时风险的产生。
发明内容
针对现有技术中的问题,本申请提供一种软件程序远程开发方法及装置,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
第一方面,本申请提供一种软件程序远程开发方法,包括:
接收用户发送的远程开发请求,并访问所述用户的工作空间;
接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
进一步地,在所述访问所述用户的工作空间之前,包括:
在预设容器内创建与所述用户具有关联关系的工作空间;
接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境。
进一步地,在所述访问所述用户的工作空间之前,包括:
根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限。
进一步地,还包括:
接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
第二方面,本申请提供一种软件程序远程开发装置,包括:
工作空间访问模块,用于接收用户发送的远程开发请求,并访问所述用户的工作空间;
远程开发操作模块,用于接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
进一步地,还包括:
工作空间创建单元,用于在预设容器内创建与所述用户具有关联关系的工作空间;
工作空间配置单元,用于接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境。
进一步地,还包括:
身份验证单元,用于根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限。
进一步地,还包括:
工作空间共享单元,用于接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的软件程序远程开发方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的软件程序远程开发方法的步骤。
由上述技术方案可知,本申请提供一种软件程序远程开发方法及装置,通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的软件程序远程开发方法的流程示意图之一;
图2为本申请实施例中的软件程序远程开发方法的流程示意图之二;
图3为本申请实施例中的软件程序远程开发装置的结构图之一;
图4为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
考虑到现有的开发模式,一般是在开发人员本地的个人电脑上搭建开发环境,在正式开发代码前,需要配置系统环境、安装开发工具、拉取项目代码、安装依赖等操作。这些操作,任何一步的差异,都可能导致环境的不一致,从而导致生产上线时风险的产生的问题,本申请提供一种软件程序远程开发方法及装置,通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
为了能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率,本申请提供一种软件程序远程开发方法的实施例,参见图1,所述软件程序远程开发方法具体包含有如下内容:
步骤S101:接收用户发送的远程开发请求,并访问所述用户的工作空间。
可选的,在本申请中所述用户可以通过浏览器访问本申请的系统,即通过浏览器接收用户输入的内容,并展示本申请系统返回的数据。
可选的,每个用户可以创建多个工作空间,每个工作空间之间是完全隔离的,保证了环境的一致性。同时,用户一次只能处于一个工作空间,在工作空间中,环境是隔离的,可以针对项目进行个性化定制。不会影响其他工作空间,也不会被其他工作空间影响。用户可以共享/使用别人创建的环境,保证项目组各成员之间环境的一致性。
步骤S102:接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
可以理解的是,一个工作空间的本质就是一个云上的节点,内部包含了预置的通用环境、操作该工作空间对应的插件代理、web端IDE对应的后台支撑。
其中,所述预置的通用环境就是预置了一些配置文件,而自定义的环境,就是一份修改过的配置文件。对于一个项目来说,定制好了这个环境后,其他所有成员只要使用这份配置文件(使用共享环境)就可以了,可以避免环境不一致的问题。
再者,所述插件代理是指在浏览器端所有的操作,都是一个简化的、可视化的操作,比如点击“上传git”按钮,这个请求要在工作空间中实现将开发代码上传git仓库的功能,就需要平台提供的插件代理去支持。插件代理收到“上传git”命令,就调用相应的功能去实现。
同时,所述web端IDE对应的后台支撑可以理解为:浏览器端本质上只是一个显示和输入,浏览器端(前端)的各类操作,比如“分步调试”,那就需要后端提供该能力。通过http请求将命令发布到后端,后端处理完之后告诉前端调试完之后是什么样式,前端就根据这个返回结果进行相应的展示。
从上述描述可知,本申请实施例提供的软件程序远程开发方法,能够通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
为了能够为每一用户创建互相之间完全隔离的工作空间,并使开发环境保持一致,在本申请的软件程序远程开发方法的一实施例中,参见图2,还可以具体包含如下内容:
步骤S201:在预设容器内创建与所述用户具有关联关系的工作空间。
步骤S202:接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境。
可以理解的是,一个工作空间的本质就是一个云上的节点,本申请可以调用k8s或者docker等底层容器的能力,用来创建、管理节点,当用户创建了一个工作空间时,该工作空间可以根据所述用户的用户标识与该用户建立关联关系。
可以理解的是,开发者(即所述用户)通过浏览器管理工作空间和工程。浏览器控制工作空间的生命周期,向工作空间注入各种服务,例如工程、源码、插件等。服务器和工作空间有内置的Restful API,控制台和浏览器IDE所做的事情都是通过Restful API完成。
为了能够保证各个工作空间的隔离性,在本申请的软件程序远程开发方法的一实施例中,还可以具体包含如下内容:
根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限。
可选的,通过LDAP等认证方式进行认证,用户首次访问平台时,创建新用户,存储平台数据库。后续访问工作空间、提取/存储文件等操作,都要通过身份认证(TOKEN机制)。
为了能够使开发团队能够共享同一开发项目的工作空间,在本申请的软件程序远程开发方法的一实施例中,还可以具体包含如下内容:
接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
可以理解的是,工作空间是工程、环境和命令的集合,具有独立的运行时服务器,具有独立的URL,因此允许多个用户同时访问一个工作空间(协作开发)。
由上述描述可知,本申请至少还可以实现如下技术效果:
1.支持远程动态创建工作空间。每创建一个工作空间,就相当于部署了一套Theia,而且可以保证每一个相同设置的工作空间之间,环境完全一致。而现有技术中的Thiea要部署多个项目,就无法保证项目之间环境的一致性了。
2.工作空间隔离。各个工作空间之间,使用了容器技术,所以互不干扰,且可以完全一模一样的进行复制。
3.工作空间共享。配置好的工作空间,可以通过镜像文件,一模一样的共享给项目组其他成员,不必担心不同人员搭建的环境存在不一致的问题。
4.预置工作空间。支持预置主流开发语言的环境,项目开发时,基于这些环境进行微调之后,就搭建好了开发环境,可以共享给项目组成员进行项目的开发。
为了能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率,本申请提供一种用于实现所述软件程序远程开发方法的全部或部分内容的软件程序远程开发装置的实施例,参见图3,所述软件程序远程开发装置具体包含有如下内容:
工作空间访问模块10,用于接收用户发送的远程开发请求,并访问所述用户的工作空间。
远程开发操作模块20,用于接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
从上述描述可知,本申请实施例提供的软件程序远程开发装置,能够通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
为了能够为每一用户创建互相之间完全隔离的工作空间,并使开发环境保持一致,在本申请的软件程序远程开发装置的一实施例中,还具体包含有如下内容:
工作空间创建单元,用于在预设容器内创建与所述用户具有关联关系的工作空间;
工作空间配置单元,用于接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境。
为了能够保证各个工作空间的隔离性,在本申请的软件程序远程开发装置的一实施例中,还具体包含有如下内容:
身份验证单元,用于根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限。
为了能够使开发团队能够共享同一开发项目的工作空间,在本申请的软件程序远程开发装置的一实施例中,还具体包含有如下内容:
工作空间共享单元,用于接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
从硬件层面来说,为了能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率,本申请提供一种用于实现所述软件程序远程开发方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现软件程序远程开发装置与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的软件程序远程开发方法的实施例,以及软件程序远程开发装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,软件程序远程开发方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
图4为本申请实施例的电子设备9600的系统构成的示意框图。如图4所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图4是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,软件程序远程开发方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
步骤S101:接收用户发送的远程开发请求,并访问所述用户的工作空间。
步骤S102:接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
从上述描述可知,本申请实施例提供的电子设备,通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
在另一个实施方式中,软件程序远程开发装置可以与中央处理器9100分开配置,例如可以将软件程序远程开发装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现软件程序远程开发方法功能。
如图4所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图4中所示的所有部件;此外,电子设备9600还可以包括图4中没有示出的部件,可以参考现有技术。
如图4所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的软件程序远程开发方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的软件程序远程开发方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤S101:接收用户发送的远程开发请求,并访问所述用户的工作空间。
步骤S102:接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作。
从上述描述可知,本申请实施例提供的计算机可读存储介质,通过接收用户发送的远程开发请求,并访问所述用户的工作空间;接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作,能够使得开发人员的开发环境不再受限于本地系统资源的限制,使得开发时使用的软件版本、系统配置、依赖等信息与生产环境保持一致,从而提高软件程序开发效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (4)

1.一种软件程序远程开发方法,其特征在于,所述方法包括:
接收用户发送的远程开发请求,在预设容器内创建与所述用户具有关联关系的工作空间,接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境,根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限,访问所述用户的工作空间;
接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作;
接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
2.一种软件程序远程开发装置,其特征在于,包括:
工作空间访问模块,用于接收用户发送的远程开发请求,在预设容器内创建与所述用户具有关联关系的工作空间,接收所述用户发送的环境配置命令,并根据所述环境配置命令配置所述工作空间的开发环境,根据所述远程开发请求对所述用户进行身份验证,并在所述身份验证通过后为所述用户开设工作空间的访问权限,访问所述用户的工作空间;
远程开发操作模块,用于接收所述用户发送的远程开发命令,并根据所述远程开发命令调用所述工作空间中的预设插件代理以执行对应的远程开发操作;
工作空间共享单元,用于接收用户发送的工作空间共享命令,并在接收到另一用户发送的与该工作空间对应的远程开发请求时,根据所述工作空间共享命令和所述另一用户的身份验证结果判断该另一用户是否具有该工作空间的访问权限,若是,则建立该另一用户与该工作空间的访问连接。
3.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1所述的软件程序远程开发方法的步骤。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1所述的软件程序远程开发方法的步骤。
CN202010240381.6A 2020-03-31 2020-03-31 软件程序远程开发方法及装置 Active CN111367561B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010240381.6A CN111367561B (zh) 2020-03-31 2020-03-31 软件程序远程开发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010240381.6A CN111367561B (zh) 2020-03-31 2020-03-31 软件程序远程开发方法及装置

Publications (2)

Publication Number Publication Date
CN111367561A CN111367561A (zh) 2020-07-03
CN111367561B true CN111367561B (zh) 2023-09-22

Family

ID=71207019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010240381.6A Active CN111367561B (zh) 2020-03-31 2020-03-31 软件程序远程开发方法及装置

Country Status (1)

Country Link
CN (1) CN111367561B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231231B (zh) * 2020-11-16 2023-12-12 广州速威智能系统科技有限公司 云端服务的调试方法、系统及装置
CN112667224A (zh) * 2021-01-12 2021-04-16 北京字节跳动网络技术有限公司 一种文件处理方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8234620B1 (en) * 2007-04-30 2012-07-31 Oracle America, Inc. Method and system for software development using distributed computing resources
CN104391690A (zh) * 2014-11-04 2015-03-04 中国石油天然气股份有限公司 一种应用开发系统及方法
CN109104467A (zh) * 2018-07-25 2018-12-28 北京京东尚科信息技术有限公司 开发环境构建方法、装置以及平台系统和存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9251039B2 (en) * 2012-02-17 2016-02-02 Microsoft Technology Licensing, Llc Remote debugging as a service
US10572226B2 (en) * 2016-12-21 2020-02-25 Aon Global Operations Ltd (Singapore Branch) Methods, systems, and portal using software containers for accelerating aspects of data analytics application development and deployment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8234620B1 (en) * 2007-04-30 2012-07-31 Oracle America, Inc. Method and system for software development using distributed computing resources
CN104391690A (zh) * 2014-11-04 2015-03-04 中国石油天然气股份有限公司 一种应用开发系统及方法
CN109104467A (zh) * 2018-07-25 2018-12-28 北京京东尚科信息技术有限公司 开发环境构建方法、装置以及平台系统和存储介质

Also Published As

Publication number Publication date
CN111367561A (zh) 2020-07-03

Similar Documents

Publication Publication Date Title
CN111031058A (zh) 基于WebSocket的分布式服务器集群交互方法及装置
CN111813601B (zh) 有状态分布式集群的微服务回滚方法及装置
CN112463634B (zh) 微服务架构下的软件测试方法及装置
CN111367561B (zh) 软件程序远程开发方法及装置
CN111679790A (zh) 远程软件开发存储空间分配方法及装置
CN113157345A (zh) 前端工程自动启动方法及装置
CN111459539A (zh) 基于镜像分层的持续集成流水线运行方法及装置
CN112953908A (zh) 网络隔离配置方法、装置及系统
CN111445331A (zh) 交易撮合方法及装置
CN111930288A (zh) 交互式业务处理方法及系统
CN112689012A (zh) 跨网络的代理通讯方法及装置
CN111371695A (zh) 服务限流方法及装置
CN113342330A (zh) 前端工程生成方法及装置
CN112559158A (zh) 微服务定时任务调度方法及装置
CN110427260B (zh) 主机作业调度方法、装置及系统
CN113095053A (zh) 网页表格定制方法及装置
CN113050936B (zh) 基于集成开发环境的前端数据处理方法及装置
CN115099930A (zh) 金融业务数据处理方法及装置
CN113268272B (zh) 基于私有云的应用交付方法、装置及系统
CN113434423A (zh) 接口测试方法及装置
CN113158259A (zh) 区块链完整性验证方法及装置
CN113377385A (zh) 客户端自动部署方法及装置
CN112102058A (zh) 管会系统参数配置方法及装置
CN111953847A (zh) 客户端消息风险提醒方法、装置及系统
CN111343172A (zh) 网络访问权限动态处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant