CN103186376A - 一种用于建立或更新软件开发环境的方法、装置和设备 - Google Patents

一种用于建立或更新软件开发环境的方法、装置和设备 Download PDF

Info

Publication number
CN103186376A
CN103186376A CN2011104554915A CN201110455491A CN103186376A CN 103186376 A CN103186376 A CN 103186376A CN 2011104554915 A CN2011104554915 A CN 2011104554915A CN 201110455491 A CN201110455491 A CN 201110455491A CN 103186376 A CN103186376 A CN 103186376A
Authority
CN
China
Prior art keywords
information
development
script
environment
treatment
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.)
Granted
Application number
CN2011104554915A
Other languages
English (en)
Other versions
CN103186376B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201110455491.5A priority Critical patent/CN103186376B/zh
Publication of CN103186376A publication Critical patent/CN103186376A/zh
Application granted granted Critical
Publication of CN103186376B publication Critical patent/CN103186376B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明的目的是提供一种用于建立或更新待开发对象的软件开发环境的方法、装置和设备。根据本发明的方案,包括以下步骤:获取所述待开发对象的对象相关信息;基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息;其中,所述模板信息包括脚本模板信息,所述环境构建信息包括脚本信息;执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。本发明的优点在于,对各种不同的待开发对象均可通过计算机设备来迅速地根据所获得的对象相关信息来建立或更新其软件开发环境,无需人工参与软件开发环境的搭建,大大简化了操作步骤,极大地提高了效率。

Description

一种用于建立或更新软件开发环境的方法、装置和设备
技术领域
本发明涉及计算机领域,尤其涉及一种用于建立或更新待开发对象的软件开发环境的方法、装置和设备。
背景技术
在开发软件或网站等项目时,需要先为待开发的软件或者网站搭建软件开发环境(SDE,Software Development Environment),是指在基本硬件和宿主软件的基础上,为支持***软件和应用软件的工程化开发和维护而使用的一组软件。软件开发环境通常包括软件工具和环境集成机制两部分。其中,软件工具包括各种支持特定过程模型和开发方法的工具,例如,支持瀑布模型及数据流方法的分析工具、设计工具、编码工具、测试工具、维护工具等;环境集成机制用于集成所述软件工具以支持软件开发的各项活动。其中,环境集成机制从功能上通常可分为环境信息库、过程控制和消息服务器以及用户界面三部分。其中,环境信息库是整个软件开发环境的核心,用以储存与***开发有关的信息并支持信息的交流与共享。环境信息库中通常包括两类信息,一类是开发过程中产生的有关被开发***的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、***配置、过程模型、可复用构件等。
通常搭建软件开发环境的过程主要包括对软件工具的选择,以及建立或更新与所选择的软件工具相应的环境集成机制中的环境信息库的操作。然而,目前搭建软件开发环境的过程通常都是通过开发人员手动执行的,不仅在执行的效率较低,并且容易发生错误,影响后续的开发过程。
发明内容
本发明的目的是提供一种用于建立或更新待开发对象的软件开发环境的方法、装置和设备。
根据本发明的一个方面,提供一种计算机实现的用于建立或更新待开发对象的软件开发环境的方法,其中,所述方法包括以下步骤:
a.获取所述待开发对象的对象相关信息;
b.基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息;其中,所述模板信息包括脚本模板信息,所述环境构建信息包括脚本信息;
其中,所述方法还包括以下步骤:
i执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
根据本发明的一个方面,还提供了一种用于建立或更新待开发对象的软件开发环境的开发装置,其中,所述开发装置包括:
第一获取装置,用于获取所述待开发对象的对象相关信息;
生成装置,用于基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息;其中,所述模板信息包括脚本模板信息,所述环境构建信息包括脚本信息;
执行装置,用于执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
根据本发明的一个方面,还提供了一种计算机设备,其中,该计算机设备包含所述开发装置。
与现有技术相比,本发明具有以下优点:根据本发明的方案,对各种不同的待开发对象均可通过本发明的计算机设备来迅速地根据所获得的对象相关信息来建立或更新其软件开发环境,无需人工参与软件开发环境的搭建,大大简化了操作步骤,极大地提高了效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一个方面的计算机实现的用于建立或更新待开发对象的软件开发环境的方法流程图;
图2为本发明一个优选实施例的用于建立或更新待开发对象的软件开发环境的方法流程图;
图3为本发明一个方面的用于建立或更新待开发对象的软件开发环境的开发装置的结构示意图;
图4为本发明一个优选实施例的用于建立或更新待开发对象的软件开发环境的开发装置的结构示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
图1示意出了本发明一个方面的计算机实现的用于建立或更新待开发对象的软件开发环境的方法流程图。其中,所述待开发对象包括计算机领域中各种待开发的软件对象,优选地,所述待开发对象包括但不限于:1)网站;2)应用软件等。
另外,下文中所称“软件开发环境”意指在具有宿主软件的计算机设备上所使用的一组用于支持对待开发对象的开发、维护、管理等操作的软件,主要包括软件工具和环境集成机制。其中,所述软件工具包括支持特定过程模型和开发方法的各类软件;所述环境集成机制用于集成所述软件工具以支持对待开发对象进行开发、维护、管理等各项操作,环境集成机制包括但不限于环境信息库、过程控制和消息服务器以及用户界面,其中,环境信息库用于存储与待开发对象有关的信息并支持所述信息的交流与共享,例如,用于存储待开发对象所需的通用函数文件以及数据文件等。
其中,所述宿主软件包括但不限于用于使前述软件工具以及环境集成机制在所述计算机设备上运行的软件,如操作***软件等。
其中,本文所述的计算机设备,均为能够按照事先存储的程序,自动、高速地进行大量数值计算和各种信息处理的现代化智能电子设备,其硬件包括但不限于微处理器、FPGA、DSP、嵌入式设备等。其中,所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述网络设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
其中,建立或更新待开发对象的软件开发环境的方式包括但不限于:
1)安装用于开发所述待开发对象的软件工具;
2)对已安装或已集成的软件工具的参数进行配置,例如,修改数据库软件的默认的数据文件存储路径等;
3)建立或更新软件开发环境中的环境信息库,其中,建立或更新环境信息库的方式包括但不限于:
a)新建环境信息库中所需的文件信息,如新建测试网页,新建代码模板等;
b)将已有的开发对象时所需的文件存储至所述环境信息库的相应位置,例如,将待开发软件所需的dll文件存储至该待开发软件的主程序所处的目录下,又例如,将待开发网站所需的用户资料信息的数据文件导入至网站数据库中等。
根据本发明的方法可通过计算机设备来实现,所述计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。
需要说明的是,此处用于建立或更新待开发对象的软件开发环境,以实现本发明的计算机设备,与前述软件开发环境所处的计算机设备,可以为同一设备,也可以为不同设备。
具体地,如图1所示,在步骤S1中,计算机设备获取所述待开发对象的对象相关信息。
其中,所述对象相关信息包括与对象有关的各种信息,优选地,所述对象相关信息包括以下至少一项:
1)对象基本信息,例如,待开发对象的标志信息、建立待开发对象的人员信息及部门信息、对待开发对象进行描述的描述信息等。
2)对象部署信息,所述对象部署信息包括但不限于:
a)开发所述带开发对象时所需的一个或多个文件的文件标识信息及各个文件的存储地址信息;
b)开发所述带开发对象时所需的一个或多个待安装的工具软件的名称及各个工具软件的安装地址信息;优选地,地址信息中包括所述文件或工具软件所属计算机设备的网络地址信息。
3)对象配置信息,所述对象配置信息用于配置所述待开发对象的软件开发环境中的各个工具软件的参数信息;所述对象配置信息包括但不限于参数名称以及参数值,优选地,所述参数信息还包括以下至少一项:a)参数所处文件的文件标识信息,b)参数所属工具软件的软件名称等。
具体地,所述计算机设备获取所述待开发对象的对象相关信息的方式包括但不限于:
1)计算机设备直接获取用户输入的对象相关信息。
例如,计算机设备获取用户在UI界面中输入的对象相关信息。
2)计算机设备自网络中获取对象相关信息。
具体地,计算机设备获取预存储于网络中其他计算机设备的对象相关信息;或者,计算机设备通过在其他计算机设备中的用户界面获取用户所输入的对象相关信息。
3)计算机设备获取在本地计算机设备中预存储的对象相关信息。
例如,待开发对象为一网站Site1,计算机设备获取用户在UI界面中输入的该待开发网站Site1的相关信息包括:Site1所基于的操作***为Linux,采用的服务器软件为Apache,并且服务器软件Apache的参数配置信息如下表1所示:
表1
  参数名称   参数值
  ServerRoot   /etc/httpd
  Timeout   200
  KeepAlive   Off
  DocumentRoot   /var/web/www/html
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取所述待开发对象的对象相关信息的实现方式,均应包含在本发明的范围内。
接着,在步骤S2中,基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。其中,所述模板信息包括脚本模板信息,所述环境构建信息包括用于基于所述脚本模板信息生成的脚本信息。优选地,所述模板信息还包括代码模板信息,所述环境构建信息还包括基于所述代码模板信息生成的环境代码信息,以及用于部署所述环境代码信息的代码部署脚本信息。其中,所述脚本信息包括经由解释器即可执行的可执行文件,例如,采用Shell、Perl、Java script、VBscript、ASP等语言编写的可执行文件等。
其中,所述预获取模板信息的方式包括但不限于:
1)获取与对象相关信息对应的模板信息;
2)获取所述待开发对象的类型信息,并根据所述类型信息来获取与所述类型信息对应的模板信息。
其中,所述编辑操作包括但不限于以下至少一项操作:
1)添加操作;
2)更改操作;
3)删除操作。
具体地,所述计算机设备基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息的方式包括但不限于:
1)当所述编辑操作包括添加操作时,计算机设备根据所述对象相关信息获取需要添加至所述模板信息中的待添加信息;接着,计算机设备将所述待添加信息添加至所述模板中以获得所述环境构建信息。
具体地,所述计算机设备基于所述对象相关信息执行解析操作,根据解析结果确定需要添加至所述预获取的模板信息中的待添加信息,并将所述待添加信息添加至所述模板信息中以获得所述环境构建信息。
2)当编辑操作包括更改和/或删除操作时,根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;接着,计算机设备对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
具体地,所述计算机设备基于所述对象相关信息执行预定的解析操作,根据解析结果确定一个或多个待编辑的模板信息,并确定该一个或多个待编辑的模板信息中需要更改和/或删除的内容信息,对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
需要说明的是,本领域技术人员可根据实际情况和需求来确定对模板信息所需执行的编辑操作的顺序和次数,例如,先执行添加操作再执行更改操作;或者先执行删除操作,并多次执行添加操作后再执行更改操作,或者多次执行删除操作的方式等等。
例如,以前述步骤S1中举例为例,计算机设备在步骤S1获得Site1的相关信息包括操作***类型为Linux,服务器软件为Apache,且预获取脚本模板信息中包含用于设置Apache的各项参数的Shell代码。计算机设备根据在步骤S1中获得的“服务器软件为Apache”的信息,先判断本地是否已安装了Apache,当判断本地未安装Apache时,该计算机设备由本地预存储的分别用于在Windows和Linux***中安装Apache的两段Shell代码中,选择用于在Linux***中安装Apache的Shell代码,并将该段代码添加至当前的脚本模板信息中;接着,计算机设备根据在步骤S1中获得的如表1所示的Apache配置信息,在脚本模板信息所包含的shell代码中查询表1中所示的参数名称“ServerRoot”,获得用于将参数ServerRoot的参数值设为“/httpd”的代码,并将该段代码中的参数值“/httpd”修改为表1中所示的“ServerRoot”的参数值“/etc/httpd”;接着,计算机设备对表1中所示的其他参数“Timeout”、“KeepAlive”以及“DocumentRoot”均执行相同的操作以修改其相应的参数值,以基于该修改后的脚本模板信息生成用于安装Apache服务器软件的脚本信息。
其中,所述解析操作包括根据预定的代码语言的语法规则对所获得的对象相关信息进行解析并执行相应操作的方法。本领域技术人员应可根据实际情况和需求来确定对对象相关信息进行解析操作的方式,在此不再赘述。
优选地,当计算机设备中存在多个预存储的模板信息时,计算机设备可根据在步骤S1中获得的对象相关信息,由多个预存储的模板信息中获取与对象相关信息对应的模板信息,以基于该与对象相关信息对应的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。
例如,当计算机设备中预存储有多个分别用于安装不同的服务器软件的脚本模板信息时,根据计算机设备在步骤S1中获得的服务器软件名称“Apache”,选择用于安装Apache的脚本模板信息,并基于该脚本模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;并对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息的实现方式,均应包含在本发明的范围内。
接着,在步骤S3中,计算机设备执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
具体地,所述计算机设备根据所述脚本信息的脚本语言进行解析,以执行相应的脚本操作,来建立或更新所述待开发对象的软件开发环境。其中,所述脚本操作包括对脚本信息进行解析后可执行的各类操作;优选地,所述脚本操作包括但不限于以下至少一项操作:
1)部署操作,所述部署操作包括但不限于:
a)将文件存储至相应地址信息的存储操作;
b)用于安装开发过程所需的软件工具的安装操作,例如,安
装用于开发Java软件的软件工具JBuilder,又例如,安装待开发对象所需的数据库软件MySQL等。
2)参数配置操作,所述参数配置操作包括根据对象配置信息所执行的操作,例如,修改软件开发环境中用于存储待开发对象的主程序的地址信息等。
3)新建操作,例如,根据待开发对象的对象名称来新建该待开发对象主程序的代码文档,又例如,在待开发网站的主目录下新建测试用例文档等。
4)执行测试操作,例如,对已建立的测试用例文档进行编译并运行,并反馈运行结果的操作等。
例如,如步骤S2中所述的例子,计算机设备基于Shell语言对在步骤S2中获得的脚本信息进行解析,以在该计算机设备本地安装Apache,并将所安装的Apache的参数中“ServerRoot”、“Timeout”、“KeepAlive”以及“DocumentRoot”这四个参数分别配置为表1中所示的参数值,从而建立用于开发网站Site1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境的实现方式,例如,通过运行脚本信息安装软件开发工具Visual C++,并基于该软件工具新建用于开发软件应用程序的主程序文档的方式,或者,通过运行脚本信息,对已安装的软件工具JBuilder的property中的各个参数的参数值进行更改,以更新待开发的Jave软件的软件开发环境的方式等,均应包含在本发明的范围内。
需要进一步说明的是,步骤S1至S2与步骤S3可以由不同的计算机设备执行,例如,第一计算机设备中执行步骤S1及S2以获得环境构建信息,并将执行后获得的环境构建信息发送至设备第二计算机设备中,并由该第二计算机设备运行所接收的环境构建信息中的脚本信息对应的脚本操作,以建立或更新软件开发环境的方式等,均应包含在本发明的保护范围内。
根据本发明的一个优选实施例,其中,所述对象相关信息包括所述待开发对象所位于的设备的网络地址信息,所述脚本信息包括所述网络地址信息,其中,所述步骤S3还包括步骤S31(图未示)。
在步骤S31中,计算机设备对所述设备远程执行所述脚本信息对应的脚本操作,以在所述设备中建立或更新所述待开发对象的软件开发环境。
例如,如步骤S1中举例所示,计算机设备在步骤S1中获得的对象相关信息中还包括Site1所处计算机设备的IP地址“10.1.1.1”,且在步骤S2中添加了用于与该IP的设备建立远程连接的shell代码,例如“#!/bin/bash ssh username10.1.1.1”,则计算机设备先与网络中IP地址为10.1.1.1的设备建立远程连接,并为该设备安装apache,且该设备中所安装的Apache的四个参数“ServerRoot”、“Timeout”、“KeepAlive”以及“DocumentRoot”这四个参数分别按照表2所示的参数值进行配置。
表2
  参数名称   参数值
  ServerRoot   /etc/httpd
  Timeout   200
  KeepAlive   Off
  DocumentRoot   /var/web/www/html
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何对待开发对象所位于的设备远程执行所述脚本信息对应的脚本操作,以在所述设备中建立或更新所述待开发对象的软件开发环境的实现方式,均应包含在本发明的范围内。
根据本发明的又一个优选实施例,其中,所述模板信息还包括代码模板信息,所述环境构建信息还包括环境代码信息以及用于部署所述环境代码信息的代码部署脚本信息;其中,所述步骤S3还包括步骤S32(图未示)。
在步骤S32中,计算机设备执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的开发环境。
例如,待开发对象为基于C语言开发的应用软件app1,且该应用软件的软件运行环境已经建立,计算机设备在步骤S1中获得app1使用基于MySQL的数据库的信息,且预获取的模板信息中包括用于生成测试用例的代码模板信息,该代码模板信息中包括如下代码:
#include<winsock2.h>
#include<iostream>
int main(char**args){};
计算机设备在步骤S2中向该代码模板信息中添加了用于测试能否连接数据MySQL的代码后,获得可用于测试能否连接数据库的环境代码信息如下所示:
Figure BDA0000127238900000111
且计算机设备在步骤S2中基于该环境代码信息以及预定的测试目录地址信息“C:\Program\Test”生成用于部署该环境代码信息的代码部署脚本信息,则计算机设备运行该代码部署脚本信息后,将前述环境代码信息存储至C:\Program\Test下,以更新该应用软件app1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的开发环境的实现方式,均应包含在本发明的范围内。
根据本发明的又一个优选实施例,其中,所述方法还包括步骤S4(图未示)和S5(图未示),所述步骤S1进一步包括步骤S11(图未示)。
在步骤S4中,计算机设备获取所述待开发对象的类型信息。
其中,所述类型信息包括但不限于:
1)网站类型;
2)单机软件类型;
3)联机软件类型。
其中,所述计算机设备获取所述待开发对象的类型信息的方式包括但不限于:
1)获取用户输入的类型信息;
2)获取本地预存储的类型信息;
3)接受来自网络的类型信息等。例如,计算机设备接收网络中其他计算机设备获取的用户输入的类型信息等。
在步骤S5中,计算机设备获取与所述类型信息对应的模板信息。
具体地,计算机设备根据预定的类型信息与一项或多项模板信息的对应关系,获取与步骤S4中获得的类型信息对应的模板信息。
例如,预定网站类型对应用于安装服务器软件的安装脚本模板信息temp1以及用于生成测试网页的测试网页模板信息temp2,联机软件类型对应用于配置用户数据库的配置脚本模板信息temp3,单机软件类型对应于用于部署动态链接库的部署脚本模板信息temp4,且计算机设备在步骤S4中获得类型信息包括网站类型,则计算机设备获取于网站类型对应的安装脚本模板信息temp1以及测试网页模板信息temp2。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取与所述类型信息对应的模板信息的实现方式,均应包含在本发明的范围内。
接着,在步骤S11中,计算机设备获取与所述类型信息对应的对象相关信息。
具体地,计算机设备根据预定的类型信息与待获取的对象相关信息的信息项间的对应关系,确定与所获得的类型信息对应的信息项,并根据所确定的信息项来获取相应的对象相关信息。
例如,预定各个类型信息对应的待获取的信息项如下表3所示:
表3
且计算机设备在步骤S4中获得的类型信息为单机软件类型,则计算机设备由本地预存储的待开发软件的相关信息中获取操作***类型信息、文件标识信息及其存储目录的信息,作为该待开发软件的对象相关信息。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取与所述类型信息对应的对象相关信息的实现方式,均应包含在本发明的范围内。
根据本发明的方案,对于各种不同的待开发对象,均可通过本发明的计算机设备来迅速地根据所获得的对象相关信息来建立或更新其软件开发环境,无需人工参与软件开发环境的搭建,大大简化了操作步骤,极大地提高了效率。
图2示意出了本发明一个优选实施例的用于建立或更新待开发对象的软件开发环境的方法流程图。其中,对象相关信息包括对象部署信息,其中,所述对象部署信息包括所述待开发对象所需的环境相关信息的标识信息及其对应的目录地址信息。根据本实施例的方法包括步骤S1、步骤S2、步骤S6以及步骤S3,其中,所述步骤S3还包括步骤S33。
其中,所述环境相关信息包括预存的用于构建软件开发环境的相关文件或信息,优选地,所述环境相关信息包括以下至少一项:
1)所述待开发对象所需的数据文件信息,例如,网站数据库中的用户数据文件等;
2)所述待开发对象所需的素材信息,例如,图片文件、音视频文件等;
3)用于开发所述待开发对象的函数信息,例如,开发所述待开发对象时所需调用的函数集合,如动态链接库文件等。
步骤S1与步骤S2已在参照图1所示的实施例中予以详述,并以引用的方式包含于此,不再赘述。
在步骤S6中,计算机设备获取与所述对象部署信息对应的所述环境相关信息。
其中,所述计算机设备获取与所述对象部署信息对应的所述环境相关信息的方式包括但不限于:
1)直接获取计算机设备本地预存储的环境相关信息。
2)计算机设备向预定网络地址发送获取所述环境相关信息的请求信息,并接受来自网络反馈的所述环境相关信息。
例如,如前述参照图1所示的待开发对象Site1的例子,计算机设备在步骤S1中获得的对象相关信息中还包括待开发Site1所需用到的动态链接库count.dll以及网页图片文件pic1,则计算机设备由预定的本地存储地址下获取所述网页图片文件pic1,并根据预存储的与count.dll对应的下载地址,向该下载地址发送请求信息以下载count.dll至本地。
接着,在步骤S33中,计算机设备执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境。
具体地,计算机设备执行所述脚本信息对应的脚本操作,获取所述对象部署信息中的各项环境信息,并将各项环境信息存储至其对应的目录地址信息下,以建立或更新所述待开发对象的软件开发环境。
例如,如前述步骤S6中举例所述,计算机设备在步骤S6中获得动态链接库count.dll以及网页图片文件pic1,且在步骤S2中向脚本模板信息中添加了用于将动态链接库count.dll复制至待开发网站Site1的主目录“D:\Site1”下,以及将网页图片文件pic1复制至与待开发网站Site1的相对目录为\material\pic下的shell代码,则计算机设备执行根据步骤S2所生成的脚本信息,安装服务器软件Apache,且对Apache的参数进行配置,并将count.dll复制至“D:\Site1”下,将pic1复制至“D:\WSite\material\pic”下,以完成建立Site1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境的实现方式,均应包含在本发明的范围内。
需要说明的是,本说明书的举例中所述的对象相关信息、模板信息、环境构建信息、环境相关信息等作为说明作用的示例,仅供理解本发明,而非限定为实际应用时的内容。
根据本发明的方案,通过获取已存在的文件并将其部署至与待开发对象相应的目录地址下,可充分利用现有的各类接口及文件信息,快速高效建立或更新待开发对象的软件开发环境。
图3示意出了本发明一个方面的用于建立或更新待开发对象的软件开发环境的开发装置的结构示意图。所述开发装置包含于计算机设备中,且包括第一获取装置1、生成装置2以及执行装置3。
第一获取装置1获取所述待开发对象的对象相关信息。
其中,所述对象相关信息包括与对象有关的各种信息,优选地,所述对象相关信息包括以下至少一项:
1)对象基本信息,例如,待开发对象的标志信息、建立待开发对象的人员信息及部门信息、对待开发对象进行描述的描述信息等。
2)对象部署信息,所述对象部署信息包括但不限于:
a)开发所述带开发对象时所需的一个或多个文件的文件标识信息及各个文件的存储地址信息;
b)开发所述带开发对象时所需的一个或多个待安装的工具软件的名称及各个工具软件的安装地址信息;优选地,地址信息中包括所述文件或工具软件所属计算机设备的网络地址信息。
3)对象配置信息,所述对象配置信息用于配置所述待开发对象的软件开发环境中的各个工具软件的参数信息;所述对象配置信息包括但不限于参数名称以及参数值,优选地,所述参数信息还包括以下至少一项:a)参数所处文件的文件标识信息,b)参数所属工具软件的软件名称等。
具体地,所述第一获取装置1获取所述待开发对象的对象相关信息的方式包括但不限于:
1)第一获取装置1直接获取用户输入的对象相关信息。
例如,第一获取装置1获取用户在UI界面中输入的对象相关信息。
2)第一获取装置1自网络中获取对象相关信息。
具体地,第一获取装置1获取预存储于网络中其他计算机设备的对象相关信息;或者,第一获取装置1通过在其他计算机设备中的用户界面获取用户所输入的对象相关信息。
3)第一获取装置1获取在本地计算机设备中预存储的对象相关信息。
例如,待开发对象为一网站Site1,第一获取装置1获取用户在UI界面中输入的该待开发网站Site1的相关信息包括:Site1所基于的操作***为Linux,采用的服务器软件为Apache,并且服务器软件Apache的参数配置信息如下表4所示:
表4
  参数名称   参数值
  ServerRoot   /etc/httpd
  Timeout   200
  KeepAlive   Off
  DocumentRoot   /var/web/www/html
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取所述待开发对象的对象相关信息的实现方式,均应包含在本发明的范围内。
接着,生成装置2基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。其中,所述模板信息包括脚本模板信息,所述环境构建信息包括用于基于所述脚本模板信息生成的脚本信息。优选地,所述模板信息还包括代码模板信息,所述环境构建信息还包括基于所述代码模板信息生成的环境代码信息,以及用于部署所述环境代码信息的代码部署脚本信息。其中,所述脚本信息包括经由解释器即可执行的可执行文件,例如,采用Shell、Perl、Java script、VBscript、ASP等语言编写的可执行文件等。
其中,所述预获取模板信息的方式包括但不限于:
1)获取与对象相关信息对应的模板信息;
2)获取所述待开发对象的类型信息,并根据所述类型信息来获取与所述类型信息对应的模板信息。
其中,所述编辑操作包括但不限于以下至少一项操作:
1)添加操作;
2)更改操作;
3)删除操作。
具体地,所述生成装置2基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息的方式包括但不限于:
1)当所述编辑操作包括添加操作时,包含于生成装置2中的第二获取装置(图未示)根据所述对象相关信息获取需要添加至所述模板信息中的待添加信息;接着,包含于生成装置2中的第一子生成装置(图未示)将所述待添加信息添加至所述模板中以获得所述环境构建信息。
具体地,所述第二获取装置基于所述对象相关信息执行解析操作,根据解析结果确定需要添加至所述预获取的模板信息中的待添加信息,第一子生成装置将所述待添加信息添加至所述模板信息中以获得所述环境构建信息。
2)当编辑操作包括更改和/或删除操作时,包含于生成装置2中的确定装置(图未示)根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;接着,包含于生成装置2中的第二子生成装置(图未示)对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
具体地,所述确定装置基于所述对象相关信息执行预定的解析操作,根据解析结果确定一个或多个待编辑的模板信息,并确定该一个或多个待编辑的模板信息中需要更改和/或删除的内容信息;接着,第二子生成装置对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
需要说明的是,本领域技术人员可根据实际情况和需求来确定对模板信息所需执行的编辑操作的顺序和次数,例如,先执行添加操作再执行更改操作;或者先执行删除操作,并多次执行添加操作后再执行更改操作,或者多次执行删除操作的方式等等。
例如,以前述第一获取装置1中举例为例,第一获取装置1获得Sitel的相关信息包括操作***类型为Linux,服务器软件为Apache,且预获取脚本模板信息中包含用于设置Apache的各项参数的Shell代码。生成装置2根据第一获取装置1获得的“服务器软件为Apache”的信息,先判断本地是否已安装了Apache,当判断本地未安装Apache时,生成装置2由本地预存储的分别用于在Windows和Linux***中安装Apache的两段Shell代码中,选择用于在Linux***中安装Apache的Shell代码,并将该段代码添加至当前的脚本模板信息中;接着,生成装置2根据第一获取装置1获得的如表4所示的Apache配置信息,在脚本模板信息所包含的shell代码中查询表4中所示的参数名称“ServerRoot”,获得用于将参数ServerRoot的参数值设为“/httpd”的代码,并将该段代码中的参数值“/httpd”修改为表4中所示的“ServerRoot”的参数值“/etc/httpd”;接着,生成装置2对表4中所示的其他参数“Timeout”、“KeepAlive”以及“DocumentRoot”均执行相同的操作以修改其相应的参数值,以基于该修改后的脚本模板信息生成用于安装Apache服务器软件的脚本信息。
其中,所述解析操作包括根据预定的代码语言的语法规则对所获得的对象相关信息进行解析并执行相应操作的方法。本领域技术人员应可根据实际情况和需求来确定对对象相关信息进行解析操作的方式,在此不再赘述。
优选地,当计算机设备中存在多个预存储的模板信息时,生成装置2可根据第一获取装置1获得的对象相关信息,由多个预存储的模板信息中获取与对象相关信息对应的模板信息,以基于该与对象相关信息对应的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。
例如,当计算机设备中预存储有多个分别用于安装不同的服务器软件的脚本模板信息时,生成装置2根据第一获取装置1获得的服务器软件名称“Apache”,选择用于安装Apache的脚本模板信息,并基于该脚本模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;并对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息的实现方式,均应包含在本发明的范围内。
接着,执行装置3执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
具体地,所述执行装置3根据所述脚本信息的脚本语言进行解析,以执行相应的脚本操作,来建立或更新所述待开发对象的软件开发环境。其中,所述脚本操作包括对脚本信息进行解析后可执行的各类操作;优选地,所述脚本操作包括但不限于以下至少一项操作:
1)部署操作,所述部署操作包括但不限于:
a)将文件存储至相应地址信息的存储操作;
b)用于安装开发过程所需的软件工具的安装操作,例如,安装用于开发Java软件的软件工具JBuilder,又例如,安装待开发对象所需的数据库软件MySQL等。
2)参数配置操作,所述参数配置操作包括根据对象配置信息所执行的操作,例如,修改软件开发环境中用于存储待开发对象的主程序的地址信息等。
3)新建操作,例如,根据待开发对象的对象名称来新建该待开发对象主程序的代码文档,又例如,在待开发网站的主目录下新建测试用例文档等。
4)执行测试操作,例如,对已建立的测试用例文档进行编译并运行,并反馈运行结果的操作等。
例如,如生成装置2中所述的例子,执行装置3基于Shell语言对生成装置2所获得的脚本信息进行解析,以在该计算机设备本地安装Apache,并将所安装的Apache的参数中“ServerRoot”、“Timeout”、“KeepAlive”以及“DocumentRoot”这四个参数分别配置为表4中所示的参数值,从而建立用于开发网站Site1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境的实现方式,例如,通过运行脚本信息安装软件开发工具Visual C++,并基于该软件工具新建用于开发软件应用程序的主程序文档的方式,或者,通过运行脚本信息,对已安装的软件工具JBuilder的property中的各个参数的参数值进行更改,以更新待开发的Jave软件的软件开发环境的方式等,均应包含在本发明的范围内。
需要进一步说明的是,第一获取装置1和生成装置2可与执行装置3包含于不同的计算机设备中,例如,包含于第一计算机设备中的第一获取装置1和生成装置2执行操作以获得环境构建信息,并将执该环境构建信息发送至设备第二计算机设备中,并由包含于该第二计算机设备中的执行装置3运行所接收的环境构建信息中的脚本信息对应的脚本操作,以建立或更新软件开发环境的方式等,均应包含在本发明的保护范围内。
根据本发明的一个优选实施例,其中,所述对象相关信息包括所述待开发对象所位于的设备的网络地址信息,所述脚本信息包括所述网络地址信息,其中,所述执行装置3还包括远程执行装置(图未示)。
远程执行装置对所述设备远程执行所述脚本信息对应的脚本操作,以在所述设备中建立或更新所述待开发对象的软件开发环境。
例如,如第一获取装置1中举例所示,第一获取装置1获得的对象相关信息中还包括Site1所处计算机设备的IP地址“10.1.1.1”,且生成装置2添加了用于与该IP的设备建立远程连接的shell代码,例如“#!/bin/bash ssh username10.1.1.1”,则远程执行装置先与网络中IP地址为10.1.1.1的设备建立远程连接,并为该设备安装apache,且该设备中所安装的Apache的四个参数“ServerRoot”、“Timeout”、“KeepAlive”以及“DocumentRoot”这四个参数分别按照表5所示的参数值进行配置。
表5
  参数名称   参数值
  ServerRoot   /etc/httpd
  Timeout   200
  KeepAlive   Off
  DocumentRoot   /var/web/www/html
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何对待开发对象所位于的设备远程执行所述脚本信息对应的脚本操作,以在所述设备中建立或更新所述待开发对象的软件开发环境的实现方式,均应包含在本发明的范围内。
根据本发明的又一个优选实施例,其中,所述模板信息还包括代码模板信息,所述环境构建信息还包括环境代码信息以及用于部署所述环境代码信息的代码部署脚本信息;其中,所述执行装置3还包括第二子执行装置(图未示)。
第二子执行装置执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的开发环境。
例如,待开发对象为基于C语言开发的应用软件app1,且该应用软件的软件运行环境已经建立,第一获取装置1中获得app1使用基于MySQL的数据库的信息,且预获取的模板信息中包括用于生成测试用例的代码模板信息,该代码模板信息中包括如下代码:
#include<winsock2.h>
#include<iostream>
int main(char**args){};
生成装置2向该代码模板信息中添加了用于测试能否连接数据MySQL的代码后,获得可用于测试能否连接数据库的环境代码信息如下所示:
Figure BDA0000127238900000221
且生成装置2基于该环境代码信息以及预定的测试目录地址信息“C:\Program\Test”生成用于部署该环境代码信息的代码部署脚本信息,则第二子执行装置运行该代码部署脚本信息后,将前述环境代码信息存储至C:\Program\Test下,以更新该应用软件app1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的开发环境的实现方式,均应包含在本发明的范围内。
根据本发明的又一个优选实施例,其中,所述方法还包括第四获取装置(图未示)和第五获取装置(图未示),所述第一获取装置1进一步包括子获取装置(图未示)。
第四获取装置获取所述待开发对象的类型信息。
其中,所述类型信息包括但不限于:
1)网站类型;
2)单机软件类型;
3)联机软件类型。
其中,所述第四获取装置获取所述待开发对象的类型信息的方式包括但不限于:
1)获取用户输入的类型信息;
2)获取本地预存储的类型信息;
3)接受来自网络的类型信息等。例如,第四获取装置接收网络中其他计算机设备获取的用户输入的类型信息等。
第五获取装置获取与所述类型信息对应的模板信息。
具体地,第五获取装置根据预定的类型信息与一项或多项模板信息的对应关系,获取与第四获取装置获得的类型信息对应的模板信息。
例如,预定网站类型对应用于安装服务器软件的安装脚本模板信息temp1以及用于生成测试网页的测试网页模板信息temp2,联机软件类型对应用于配置用户数据库的配置脚本模板信息temp3,单机软件类型对应于用于部署动态链接库的部署脚本模板信息temp4,且第四获取装置获得类型信息包括网站类型,则第五获取装置获取与网站类型对应的安装脚本模板信息temp1以及测试网页模板信息temp2。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取与所述类型信息对应的模板信息的实现方式,均应包含在本发明的范围内。
接着,子获取装置获取与所述类型信息对应的对象相关信息。
具体地,子获取装置根据预定的类型信息与待获取的对象相关信息的信息项间的对应关系,确定与所获得的类型信息对应的信息项,并根据所确定的信息项来获取相应的对象相关信息。
例如,预定各个类型信息对应的待获取的信息项如下表6所示:
表6
Figure BDA0000127238900000241
且第四获取装置获得的类型信息为单机软件类型,则子获取装置由本地预存储的待开发软件的相关信息中获取操作***类型信息、文件标识信息及其存储目录的信息,作为该待开发软件的对象相关信息。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何获取与所述类型信息对应的对象相关信息的实现方式,均应包含在本发明的范围内。
根据本发明的方案,对于各种不同的待开发对象,均可通过本发明的计算机设备来迅速地根据所获得的对象相关信息来建立或更新其软件开发环境,无需人工参与软件开发环境的搭建,大大简化了操作步骤,极大地提高了效率。
图4示意出了本发明一个优选实施例的用于建立或更新待开发对象的软件开发环境的开发装置的结构示意图。其中,对象相关信息包括对象部署信息,其中,所述对象部署信息包括所述待开发对象所需的环境相关信息的标识信息及其对应的目录地址信息。根据本实施例的开发装置包括第一获取装置1、生成装置2、第三获取装置6以及执行装置3,其中,所述执行装置3进一步包括第一子执行装置33。
其中,所述环境相关信息包括预存的用于构建软件开发环境的相关文件或信息,优选地,所述环境相关信息包括以下至少一项:
1)所述待开发对象所需的数据文件信息,例如,网站数据库中的用户数据文件等;
2)所述待开发对象所需的素材信息,例如,图片文件、音视频文件等;
3)用于开发所述待开发对象的函数信息,例如,开发所述待开发对象时所需调用的函数集合,如动态链接库文件等。
第一获取装置1与生成装置2已在参照图3所示的实施例中予以详述,并以引用的方式包含于此,不再赘述。
第三获取装置6获取与所述对象部署信息对应的所述环境相关信息。
其中,所述第三获取装置6获取与所述对象部署信息对应的所述环境相关信息的方式包括但不限于:
1)直接获取计算机设备本地预存储的环境相关信息。
2)第三获取装置6向预定网络地址发送获取所述环境相关信息的请求信息,并接受来自网络反馈的所述环境相关信息。
例如,如前述参照图3所示的待开发对象Site1的例子,第一获取装置1获得的对象相关信息中还包括待开发Site1所需用到的动态链接库count.dll以及网页图片文件pic1,则第三获取装置6由预定的本地存储地址下获取所述网页图片文件pic1,并根据预存储的与count.dll对应的下载地址,向该下载地址发送请求信息以下载count.dll至本地。
接着,第一子执行装置33执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境。
具体地,第一子执行装置33执行所述脚本信息对应的脚本操作,获取所述对象部署信息中的各项环境信息,并将各项环境信息存储至其对应的目录地址信息下,以建立或更新所述待开发对象的软件开发环境。
例如,如前述第三获取装置6中举例所述,第三获取装置6获得动态链接库count.dll以及网页图片文件pic1,且生成装置2向脚本模板信息中添加了用于将动态链接库count.dll复制至待开发网站Site1的主目录“D:\Site1”下,以及将网页图片文件pic1复制至与待开发网站Site1的相对目录为\material\pic下的shell代码,则第一子执行装置33执行根据生成装置2所生成的脚本信息,安装服务器软件Apache,且对Apache的参数进行配置,并将count.dll复制至“D:\Site1”下,将pic1复制至“D:\WSite\material\pic”下,以完成建立Site1的软件开发环境。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境的实现方式,均应包含在本发明的范围内。
需要说明的是,本说明书的举例中所述的对象相关信息、模板信息、环境构建信息、环境相关信息等作为说明作用的示例,仅供理解本发明,而非限定为实际应用时的内容。
根据本发明的方案,通过获取已存在的文件并将其部署至与待开发对象相应的目录地址下,可充分利用现有的各类接口及文件信息,快速高效建立或更新待开发对象的软件开发环境。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (21)

1.一种计算机实现的用于建立或更新待开发对象的软件开发环境的方法,其中,所述方法包括以下步骤:
a.获取所述待开发对象的对象相关信息;
b.基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息;其中,所述模板信息包括脚本模板信息,所述环境构建信息包括脚本信息;
其中,所述方法还包括以下步骤:
i执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
2.根据权利要求1所述的方法,其中,所述编辑操作包括添加操作,所述步骤b包括以下步骤:
-根据所述对象相关信息获取需要添加至所述模板信息中的待添加信息;
-将所述待添加信息添加至所述模板中以获得所述环境构建信息。
3.根据权利要求1或2所述的方法,其中,所述编辑操作包括更改和/或删除操作,所述步骤b还包括以下步骤:
-根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;
-对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
4.根据权利要求1至3中任一项所述的方法,其中,所述对象相关信息包括所述待开发对象所位于的设备的网络地址信息,所述脚本信息包括所述网络地址信息,其中,所述步骤i包括以下步骤:
-对所述设备远程执行所述脚本信息对应的脚本操作,以在所述设备中建立或更新所述待开发对象的软件开发环境。
5.根据权利要求1至4中任一项所述的方法,其中,所述对象相关信息包括以下至少一项: 
-对象基本信息;
-对象部署信息;
-对象配置信息。
6.根据权利要求5所述的方法,其中,所述对象相关信息包括所述对象部署信息,其中,所述对象部署信息包括所述待开发对象所需的环境相关信息的标识信息及其对应的目录地址信息;其中,所述方法在步骤i之前还包括以下步骤:
-获取与所述对象部署信息对应的所述环境相关信息;
其中,所述步骤i还包括以下步骤:
-执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境。
7.根据权利要求6所述的方法,其中,所述环境相关信息包括以下至少一项:
-所述待开发对象所需的数据文件信息;
-所述待开发对象所需的素材信息;
-用于开发所述待开发对象的函数信息。
8.根据权利要求1至7中任一项所述的方法,其中,所述模板信息还包括代码模板信息,所述环境构建信息还包括环境代码信息以及用于部署所述环境代码信息的代码部署脚本信息;
其中,所述步骤i还包括以下步骤:
-执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的软件开发环境。
9.根据权利要求1至8中任一项所述的方法,其中,所述方法还包括以下步骤:
-获取所述待开发对象的类型信息;
-获取与所述类型信息对应的模板信息;
其中,所述步骤a还包括以下步骤:
-获取与所述类型信息对应的对象相关信息。 
10.根据权利要求9所述的方法,其中,所述类型信息包括以下任一项:
-网站类型;
-单机软件类型;
-联机软件类型。
11.一种用于建立或更新待开发对象的软件开发环境的开发装置,其中,所述开发装置包括:
第一获取装置,用于获取所述待开发对象的对象相关信息;
生成装置,用于基于所述对象相关信息对预获取的模板信息进行编辑操作,以生成用于建立或更新所述软件开发环境的环境构建信息;其中,所述模板信息包括脚本模板信息,所述环境构建信息包括脚本信息;
执行装置,用于执行所述脚本信息对应的脚本操作以建立或更新所述待开发对象的软件开发环境。
12.根据权利要求11所述的开发装置,其中,所述编辑操作包括添加操作,所述生成装置包括:
第二获取装置,用于根据所述对象相关信息获取需要添加至所述模板信息中的待添加信息;
第一子生成装置,用于将所述待添加信息添加至所述模板中以获得所述环境构建信息。
13.根据权利要求11或12所述的开发装置,其中,所述编辑操作包括更改和/或删除操作,所述生成装置还包括:
确定装置,用于根据所述对象相关信息确定所述模板信息中需要进行更改和/或删除操作的内容信息;
第二子生成装置,用于对所述内容信息执行所述更改和/或删除操作以获得所述环境构建信息。
14.根据权利要求11至13中任一项所述的开发装置,其中,所述对象相关信息包括所述待开发对象所位于的设备的网络地址信息,所述脚本信息包括所述网络地址信息,其中,所述执行装置包括:
远程执行装置,用于对所述设备远程执行所述脚本信息对应的脚本 操作,以在所述设备中建立或更新所述待开发对象的软件开发环境。
15.根据权利要求11至14中任一项所述的开发装置,其中,所述对象相关信息包括以下至少一项:
-对象基本信息;
-对象部署信息;
-对象配置信息。
16.根据权利要求15所述的开发装置,其中,所述对象相关信息包括所述对象部署信息,其中,所述对象部署信息包括所述待开发对象所需的环境相关信息的标识信息及其对应的目录地址信息;其中,所述开发装置还包括:
第三获取装置,用于获取与所述对象部署信息对应的所述环境相关信息;
其中,所述执行装置还包括:
第一子执行装置,用于执行所述脚本信息对应的脚本操作,以根据所述对象部署信息对所述环境相关信息进行部署,以建立或更新所述待开发对象的软件开发环境。
17.根据权利要求16所述的开发装置,其中,所述环境相关信息包括以下至少一项:
-所述待开发对象所需的数据文件信息;
-所述待开发对象所需的素材信息;
-用于开发所述待开发对象的函数信息。
18.根据权利要求11至17中任一项所述的开发装置,其中,所述模板信息还包括代码模板信息,所述环境构建信息还包括环境代码信息以及用于部署所述环境代码信息的代码部署脚本信息;
其中,所述执行装置还包括:
第二子执行装置,用于执行所述代码部署脚本信息对应的脚本操作,对所述环境代码信息进行部署,以建立或更新所述待开发对象的软件开发环境。
19.根据权利要求11至18中任一项所述的开发装置,其中,所述 开发装置还包括:
第四获取装置,用于获取所述待开发对象的类型信息;
第五获取装置,用于获取与所述类型信息对应的模板信息;
其中,所述第一获取装置还包括:
子获取装置,用于获取与所述类型信息对应的对象相关信息。
20.根据权利要求19所述的开发装置,其中,所述类型信息包括以下任一项:
-网站类型;
-单机软件类型;
-联机软件类型。
21.一种计算机设备,其中,该计算机设备包含如权利要求11至20中至少一项所述的开发装置。 
CN201110455491.5A 2011-12-30 2011-12-30 一种用于建立或更新软件开发环境的方法、装置和设备 Active CN103186376B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110455491.5A CN103186376B (zh) 2011-12-30 2011-12-30 一种用于建立或更新软件开发环境的方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110455491.5A CN103186376B (zh) 2011-12-30 2011-12-30 一种用于建立或更新软件开发环境的方法、装置和设备

Publications (2)

Publication Number Publication Date
CN103186376A true CN103186376A (zh) 2013-07-03
CN103186376B CN103186376B (zh) 2018-06-05

Family

ID=48677555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110455491.5A Active CN103186376B (zh) 2011-12-30 2011-12-30 一种用于建立或更新软件开发环境的方法、装置和设备

Country Status (1)

Country Link
CN (1) CN103186376B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484201A (zh) * 2014-12-11 2015-04-01 北京国双科技有限公司 用于ios设备的软件工具开发包更新方法和装置
CN105653446A (zh) * 2015-12-24 2016-06-08 北京奇虎科技有限公司 用于移动终端的自动化测试的方法及***
CN106250104A (zh) * 2015-06-09 2016-12-21 阿里巴巴集团控股有限公司 一种针对服务器的远程操作***、方法及装置
CN106547553A (zh) * 2016-10-26 2017-03-29 安徽扬远信息科技有限公司 一种建立待开发对象的软件开发环境方法
CN106951265A (zh) * 2017-03-29 2017-07-14 武汉斗鱼网络科技有限公司 开发环境搭建方法及装置
CN107678752A (zh) * 2017-08-31 2018-02-09 北京百度网讯科技有限公司 一种面向异构集群的任务处理方法及装置
CN109426690A (zh) * 2017-08-31 2019-03-05 西门子公司 生成空间的可视化模型布局的方法、装置和设备
WO2019051919A1 (zh) * 2017-09-18 2019-03-21 网宿科技股份有限公司 一种构建镜像的方法和装置
CN110531962A (zh) * 2019-08-06 2019-12-03 上海连尚网络科技有限公司 小程序的开发处理方法、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020188939A1 (en) * 2001-06-11 2002-12-12 Siemens Medical Solutions Health Services Corporation System and user interface for generation and processing of software application installation instructions
CN101014061A (zh) * 2007-01-26 2007-08-08 华为技术有限公司 测试脚本的生成方法及装置和测试方法及装置及***
US20090089747A1 (en) * 2007-09-07 2009-04-02 Verizon Data Services Inc. Method and system for managing configuration information
CN101699403A (zh) * 2009-10-27 2010-04-28 北京锐安科技有限公司 一种图形化安装分布式***的方法
CN102004659A (zh) * 2009-08-31 2011-04-06 埃森哲环球服务有限公司 集成环境生成器
CN102207859A (zh) * 2010-03-31 2011-10-05 国际商业机器公司 解决方案部署方法、设备和***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020188939A1 (en) * 2001-06-11 2002-12-12 Siemens Medical Solutions Health Services Corporation System and user interface for generation and processing of software application installation instructions
CN101014061A (zh) * 2007-01-26 2007-08-08 华为技术有限公司 测试脚本的生成方法及装置和测试方法及装置及***
US20090089747A1 (en) * 2007-09-07 2009-04-02 Verizon Data Services Inc. Method and system for managing configuration information
CN102004659A (zh) * 2009-08-31 2011-04-06 埃森哲环球服务有限公司 集成环境生成器
CN101699403A (zh) * 2009-10-27 2010-04-28 北京锐安科技有限公司 一种图形化安装分布式***的方法
CN102207859A (zh) * 2010-03-31 2011-10-05 国际商业机器公司 解决方案部署方法、设备和***

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484201A (zh) * 2014-12-11 2015-04-01 北京国双科技有限公司 用于ios设备的软件工具开发包更新方法和装置
CN106250104B (zh) * 2015-06-09 2019-08-20 阿里巴巴集团控股有限公司 一种针对服务器的远程操作***、方法及装置
CN106250104A (zh) * 2015-06-09 2016-12-21 阿里巴巴集团控股有限公司 一种针对服务器的远程操作***、方法及装置
CN105653446B (zh) * 2015-12-24 2018-03-23 北京奇虎科技有限公司 用于移动终端的自动化测试的方法及***
CN105653446A (zh) * 2015-12-24 2016-06-08 北京奇虎科技有限公司 用于移动终端的自动化测试的方法及***
CN106547553A (zh) * 2016-10-26 2017-03-29 安徽扬远信息科技有限公司 一种建立待开发对象的软件开发环境方法
CN106951265A (zh) * 2017-03-29 2017-07-14 武汉斗鱼网络科技有限公司 开发环境搭建方法及装置
CN106951265B (zh) * 2017-03-29 2022-01-04 武汉斗鱼网络科技有限公司 开发环境搭建方法及装置
CN107678752A (zh) * 2017-08-31 2018-02-09 北京百度网讯科技有限公司 一种面向异构集群的任务处理方法及装置
CN109426690A (zh) * 2017-08-31 2019-03-05 西门子公司 生成空间的可视化模型布局的方法、装置和设备
US10977076B2 (en) 2017-08-31 2021-04-13 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for processing a heterogeneous cluster-oriented task
CN109426690B (zh) * 2017-08-31 2023-07-28 西门子公司 生成空间的可视化模型布局的方法、装置和设备
WO2019051919A1 (zh) * 2017-09-18 2019-03-21 网宿科技股份有限公司 一种构建镜像的方法和装置
CN110531962A (zh) * 2019-08-06 2019-12-03 上海连尚网络科技有限公司 小程序的开发处理方法、设备及计算机可读存储介质
CN110531962B (zh) * 2019-08-06 2023-11-17 上海连尚网络科技有限公司 小程序的开发处理方法、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN103186376B (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
CN103186376A (zh) 一种用于建立或更新软件开发环境的方法、装置和设备
CN108388445B (zh) 一种基于“平台+应用”模式的持续集成方法
CN112882700B (zh) iOS应用程序构建方法及装置、电子设备及存储介质
CN112685035B (zh) 项目开发方法及装置、计算机可读存储介质、电子设备
JP2018530070A (ja) クラウドベースのコンピューティング環境上の基盤を構築、最適化及び実施するシステム及び方法
CN104731589A (zh) 用户界面的自动生成方法及自动生成装置
CN110032388B (zh) 一种增量文件的构建、发布、下载方法及装置
CN104583945A (zh) 一种应用升级方法、装置
CN105022630A (zh) 一种组件管理***及组件管理方法
CN109324799A (zh) 一种代码编译方法、计算机装置及计算机可读存储介质
CN103246578A (zh) 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器
EP2893443A1 (en) Re-configuration in cloud computing environments
CN110727575B (zh) 一种信息处理方法、***、装置、以及存储介质
CN103577552A (zh) 网页图片处理方法及装置
CN105447246A (zh) 一键生成电气原理图的方法与***
CN113885920A (zh) 机器学习模型的热更新方法、装置、电子设备及存储介质
CN104166570A (zh) 一种在线更新文件的方法、设备及***
CN114443294B (zh) 大数据服务组件部署方法、***、终端及存储介质
CN115525280A (zh) 前端代码生成方法及装置、存储介质及电子设备
CN112860251A (zh) 一种网站前端构建的方法与***
CN112000334A (zh) 页面开发方法、装置、服务器及存储介质
CN104166545A (zh) 一种网页资源的嗅探方法以及装置
CN112835568A (zh) 一种项目构建方法和装置
CN112596854A (zh) 一种持续集成流水线运行的方法和装置
CN115113850A (zh) 一种跨平台应用的构建、运行方法、服务器、终端和***

Legal Events

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