CN113760266B - 一种功能模块文件的创建方法、创建装置和电子设备 - Google Patents
一种功能模块文件的创建方法、创建装置和电子设备 Download PDFInfo
- Publication number
- CN113760266B CN113760266B CN202111316689.5A CN202111316689A CN113760266B CN 113760266 B CN113760266 B CN 113760266B CN 202111316689 A CN202111316689 A CN 202111316689A CN 113760266 B CN113760266 B CN 113760266B
- Authority
- CN
- China
- Prior art keywords
- function module
- target
- module
- file
- type
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种功能模块文件的创建方法、创建装置和电子设备,所述创建方法包括:基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到功能模块类型、目标功能模块名称和程序文件的目标目录;从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。根据所述创建方法及装置,使得功能模块文件的创建更加方便。
Description
技术领域
本申请涉及应用程序开发技术领域,具体而言,涉及一种功能模块文件的创建方法、创建装置和电子设备。
背景技术
软件前端开发项目中,首先要对需求进行分析,并搭建开发框架,然后进行各部分模块的开发。在开发一个模块的过程中,研发人员会在工程中创建一个模块,再在模块中编写代码,在编写好代码后,基于工程对所包含的代码进行编译,发布运行。
目前,开发人员在编写模块代码时,需要使用提前构建好的模块框架代码进行业务开发。开发人员在使用模块框架代码时,往往需要手动保存一份模块框架代码的文件,在新建模块时,复制文件中的框架代码并手动修改模块名称。但这种方式严重影响了开发人员的工作效率。
发明内容
有鉴于此,本申请的目的在于提供一种功能模块文件的创建方法、创建装置和电子设备,可以根据用户选择的功能模块类型和用户所操作的程序项目对应的代码语言类型,自动调取预先构建好的功能模块模板文件,无需用户手动对功能模块模板文件中的框架代码进行复制粘贴,提高了程序项目开发的效率,并且创建的功能模块模板文件所使用的代码语言类型与当前程序项目所使用的代码语言类型相同,避免了由于用户自行粘贴的框架代码的代码语言类型与程序项目所使用的代码语言类型不同而导致的报错问题。
第一方面,本申请实施例提供了一种功能模块文件的创建方法,所述创建方法包括:
基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;
接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;
从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;
将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。
进一步的,在得到所述目标功能模块文件后,所述创建方法还包括:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
进一步的,在接收构建所述程序项目所需的功能模块的创建请求之前,所述创建方法还包括:
针对至少一个功能模块类型中的每个功能模块类型,构建该功能模块类型对应的功能模块模板文件;所述功能模块类型包括模块、类组件、函数组件、容器、分类器和管理模块;
根据至少一个程序项目对应的代码语言类型生成与所述代码语言类型对应的功能模块模板文件;所述代码语言类型包括脚本语言和编程语言;
将所述功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至所述功能模块模板库中。
进一步的,所述接收构建所述程序项目所需的功能模块的创建请求,包括:
响应于用户在程序项目中对于目标按键的触发操作,显示功能模块创建界面;
响应于用户在所述功能模块创建界面中对于所述目标功能模块的功能模块类型的选择操作,接收基于对所述功能模块创建界面中功能模块类型的选择操作发送的所述目标功能模块的功能模块类型,并显示功能模块名称输入界面;
接收基于对功能模块名称输入界面中目标功能模块名称的确定操作发送的目标功能模块的目标功能模块名称。
进一步的,在得到所述目标功能模块文件后,所述创建方法还包括:
获取所述程序项目的配置文件;
将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中,以使所述目标功能模块与所述程序项目中的其他功能模块进行关联。
进一步的,将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中之后,所述创建方法还包括:
基于所述程序项目预设的代码格式化规则对所述配置文件中的代码语言进行格式化检测,以使所述配置文件中的代码语言满足所述代码格式化规则。
第二方面,本申请实施例还提供了一种功能模块文件的创建装置,所述创建装置包括:
第一确定模块,用于基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;
第二确定模块,用于接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;
功能模块模板文件调取模块,用于从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;
目标功能模块文件生成模块,用于将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。
进一步的,所述目标功能模块文件生成模块在得到所述目标功能模块文件后,所述目标功能模块文件生成模块还用于:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的功能模块文件的创建方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的功能模块文件的创建方法的步骤。
本申请实施例提供的一种功能模块文件的创建方法,首先基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;然后,接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的所述目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;最后,将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。
本申请实施例提供的功能模块文件的创建方法及装置,与现有技术中的功能模块文件的创建方法相比,可以根据用户选择的功能模块类型和用户所操作的程序项目对应的代码语言类型,自动调取预先构建好的功能模块模板文件,无需用户手动对功能模块模板文件中的框架代码进行复制粘贴,提高了程序项目开发的效率,并且创建的功能模块模板文件所使用的代码语言类型与当前程序项目所使用的代码语言类型相同,避免了由于用户自行粘贴的框架代码的代码语言类型与程序项目所使用的代码语言类型不同而导致的报错问题。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种功能模块文件的创建方法的流程图;
图2为本申请实施例提供的一种确定功能模块类型和目标功能模块名称的方法的流程图;
图3(a)~(d)为本申请实施例提供的一种功能模块文件的创建方法的界面示意图;
图4为本申请实施例提供的一种功能模块文件的创建装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
软件前端开发项目中,首先要对需求进行分析,并搭建开发框架,然后进行各部分模块的开发。在开发一个模块的过程中,研发人员会在工程中创建一个模块,再在模块中编写代码,在编写好代码后,基于工程对所包含的代码进行编译,发布运行。
经研究发现,目前,开发人员在编写模块代码时,需要使用提前构建好的模块框架代码进行业务开发。开发人员在使用模块框架代码时,往往需要手动保存一份模块框架代码的文件,在新建模块时,复制文件中的框架代码并手动修改模块名称。但这种方式严重影响了开发人员的工作效率。
基于此,本申请实施例提供了一种功能模块文件的创建方法,可以基于用户所选择的功能模块类型和当前所操作的程序项目的代码语言类型生成对应的功能模块模板文件,无需用户手动对模板文件中的代码进行复制粘贴,提高了程序项目开发的效率。
请参阅图1,图1为本申请实施例所提供的一种功能模块文件的创建方法的流程图。如图1中所示,本申请实施例提供的功能模块文件的创建方法,包括:
S101,基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型。
需要说明的是,程序项目指的是开发人员通过程序开发软件进行程序开发时所生成的项目,例如在开发一个前端应用的工程中,所被开发的前端应用就是一个程序项目。代码语言类型指的是在开发程序项目的过程中,该程序项目中的代码所使用的编程语言的类型。
针对上述步骤S101,在具体实施时,用户在对一个程序项目进行开发时,需要首先对待开发的程序项目进行操作,由于每个程序项目所使用的代码语言类型不同,有的代码语言类型可能是脚本语言,有的可能是编程语言,对此本申请不做具体限定。因此在创建功能模块之前,需要先确定用户所操作的程序项目所使用的代码语言类型,这样才能使生成的功能模块中文件的代码语言类型与当前所操作的程序项目的代码语言类型相同。基于用户所操作的程序项目,确定程序项目对应的代码语言类型,例如代码语言类型为编程语言。
S102,接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录。
需要说明的是,通常一个软件可以有多个功能,对于软件开发时的载体(即程序项目)来说,程序项目可以包含多个功能模块。不同的功能模块的代码可以实现不同的功能。例如,当程序项目可以实现登录、下单、支付、用户管理等功能时,该程序项目也可以包括相应的登录、下单、支付、用户管理这几个功能模块,对此本申请不做具体限定。创建请求指的是用来创建功能模块所产生的创建请求。目标功能模块指的是用户准备创建的功能模块。功能模块类型指的是功能模块对应的类型,具体的,功能模块类型可以包括模块、类组件、函数组件、容器、分类器和管理模块等不同的功能模块类型。目标功能模块名称指的是用户自行设定的名称,用来区分不同的功能模块。程序文件指的是程序项目中用来输入代码的文件,目标目录指示用户想要在哪个程序项目中创建功能模块。
针对上述步骤S102,响应于用户在程序项目中的操作,接收构建程序项目所需的功能模块的创建请求,并解析创建请求,以得到创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录。
请参阅图2,图2为本申请实施例所提供的一种确定功能模块类型和目标功能模块名称的方法的流程图。如图2中所示,本申请实施例提供的功能模块文件的创建方法,针对上述步骤S102,所述接收构建所述程序项目所需的功能模块的创建请求,包括:
S201,响应于用户在程序项目中对于目标按键的触发操作,显示功能模块创建界面。
需要说明的是,目标按键指的是用户用来生成创建请求所需要操作的按键,例如可以提前设置目标按键为鼠标右键或键盘快捷键。功能模块创建界面指的是用来选择想要创建的功能模块对应的功能模块类型的界面,该功能模块创建界面参见如图3(a)所示的界面示意图。
针对上述步骤S201,在具体实施时,当用于对于目标按键进行了触发操作时,例如在程序项目中点击了鼠标右键,这时响应用户对于目标按键的触发操作,显示功能模块创建界面。如图3(a)所示,“Src”为一个用户所操作的程序项目,图3(a)中左侧一列为“Src”程序项目中的各个程序文件,图3(a)中右侧一列为功能模块创建界面,当用户在程序项目点击了鼠标右键,就会在鼠标位置显示出如图3(a)中右侧一列的功能模块创建界面,用户可以在该界面上选择想要创建的功能模块类型。
S202,响应于用户在所述功能模块创建界面中对于所述目标功能模块的功能模块类型的选择操作,接收基于对所述功能模块创建界面中功能模块类型的选择操作发送的所述目标功能模块的功能模块类型,并显示功能模块名称输入界面。
需要说明的是,功能模块名称输入界面指的是用来输入功能模块名称的界面,该功能模块名称输入界面参见如图3(b)所示的界面示意图。
针对上述步骤S202,在具体实施时,当用户在功能模块创建界面选择好目标功能模块的一个功能模块类型后,响应于用户在功能模块创建界面中对于目标功能模块的功能模块类型的选择操作,接收基于对功能模块创建界面中功能模块类型的选择操作发送的目标功能模块的功能模块类型,并显示功能模块输入界面。
S203,接收基于对功能模块名称输入界面中目标功能模块名称的确定操作发送的目标功能模块的目标功能模块名称。
针对上述步骤S203,用户在功能模块名称输入界面输入好目标功能模块名称后,按下“确定”键或键盘上的回车键,这时认为用户已经输入完目标功能模块的目标功能模块名称,接收基于对功能模块名称输入界面中目标功能模块名称的确定操作发送的目标功能模块的目标功能模块名称。
这样,根据上述步骤S201-S203,可以确定用户选择的目标功能模块的功能模块类型和目标功能模块名称。
S103,从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件。
需要说明的是,功能模块模板文件指的是用于开发功能模块所需的文件,根据本申请提供的实施例,功能模块模板文件中带有该功能模块的框架代码。功能模块模板库指的是预先构建好的、用来存储功能模块模板文件的数据库。
针对上述步骤S103,在具体实施时,由于不同的功能模块类型和不同的代码语言类型分别对应不同的功能模块模板文件,因此在生成功能模块时,需要从预先存储的功能模块模板库中调取与用户所选择的功能模块类型和当前程序项目所使用的代码语言类型对应的功能模块模板文件,这样调取出的功能模块模块文件既符合用户对于功能模块类型的要求,也符合当前程序项目所使用的代码语言类型。
作为一种可选的实施方式,在接收构建所述程序项目所需的功能模块的创建请求之前,所述创建方法还包括:
针对至少一个功能模块类型中的每个功能模块类型,构建该功能模块类型对应的功能模块模板文件。
所述功能模块类型包括模块、类组件、函数组件、容器、分类器和管理模块。
这里,需要提前根据每个功能模块类型来构建该功能模块类型对应的功能模块模板文件,这样用户在创建某一类型的功能模块时,可以直接基于用户所选择的功能模块类型来调取对应的功能模块模板文件,无需用户再手动复制粘贴代码框架,提高了程序项目开发的效率。作为一种可选的实施方式,功能模块类型可以包括模块、类组件、函数组件、容器、分类器和管理模块。
这里,应注意,上述对功能模块类型的列举仅为示例,实际中,功能模块类型不限于上述例子。
根据至少一个程序项目对应的代码语言类型生成与所述代码语言类型对应的功能模块模板文件。所述代码语言类型包括脚本语言和编程语言。
这里,在每个功能模块类型的功能模块模板文件构建好后,还需设置不同代码语言类型的版本,以适应不同代码语言类型的程序项目。具体的,针对每个功能模块类型对应的功能模块模板文件,对该功能模块模板文件进行两种代码语言类型的转换,以生成与代码语言类型对应的功能模块模板文件。作为一种可选的实施方式,代码语言类型包括脚本语言和编程语言。这里,脚本语言指的是javascript语言,JavaScript是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。该代码语言类型所对应的功能模块模板文件一般为js和jsx扩展名的文件。编程语言指的是typescript语言,TypeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。TypeScript通过TypeScript编译器或Babel转译为JavaScript代码,可运行在任何浏览器,任何操作系统。该代码语言类型所对应的功能模块模板文件一般为ts和tsx扩展名的文件。
这里,应注意,上述对代码语言类型的列举仅为示例,实际中,代码语言类型不限于上述例子。
将所述功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至所述功能模块模板库中。
需要说明的是,映射关系一般指对象关系映射,对象关系映射是用于实现面向对象编程语言里不同类型系统的数据之间的转换。
这里,根据本申请提供的实施例,在每个功能模块类型对应的功能模块模板文件和不同代码语言类型的功能模块模板文件创建好后,将功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至功能模块模板库中,下次在创建功能模块时,可直接根据用户选择的功能模块类型和用户所操作的程序项目的代码语言类型来调取与之对应的功能模块模板文件,无需用户再手动复制粘贴代码框架,提高了程序项目开发的效率。
S104,将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。
需要说明的是,功能模块模板文件的初始名称指的是功能模块模板文件初始设置的默认名称,例如类组件对应的功能模块模板文件的初始名称设置为“类组件”,函数组件对应的功能模块模板文件的初始名称设置为“函数组件”,对此本申请不做具体限定。
针对上述步骤S104,在功能模块模板文件被调取后,将功能模块模板文件的初始名称替换为用户设置的目标功能模块名称,例如类组件对应的功能模块模板文件的初始名称设置为“类组件”,用户设置的目标功能模块名称为“分析组件”,则将功能模块模板文件的初始名称设置为“类组件”替换为用户的“分析组件”。作为一种可选的实施方式,由于在程序项目中都是使用英文来进行功能模块的命名和代码开发等工作,因此根据本申请提供的实施例,若当用户设定的目标功能模块名称为中文时,应将该中文自动转换为英文,将转换后的英文名称设定为目标功能模块名称,延续上一实施例,将用户设置的“分析组件”转换为英文名称“analytic”,并将目标功能模块名称修改为“analytic”。在得到目标功能模块文件后,开发人员即可在该目标功能模块文件中输入代码进行对应的功能模块的开发。
作为一种可选的实施方式,在得到所述目标功能模块文件后,所述创建方法还包括:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
作为一种可选的实施方式,在程序项目的创建过程中,接收功能模块的创建指令,确定出了用户所操作的程序项目对应的程序文件的目标目录,因此在创建好目标功能模块文件后,将目标功能模块文件添加至该程序工程的该目标目录中,将目标功能模块文件添加至该程序项目的该目标目录中的效果图参见如图3(c)所示的界面示意图。延续上一实施例,如图3(c)所示,用户创建的目标功能模块的目标功能模块名称为“analytic”,这时在程序工程的目标目录中添加一个名为“analytic”的目标功能模块文件,并且该文件中包括提前构建好的文件。
作为一种可选的实施方式,在得到所述目标功能模块文件文件后,所述创建方法还包括:
获取所述程序项目的配置文件。
需要说明的是,配置文件指的是一种计算机文件,可以为一些计算机程序配置参数和初始设置。根据本申请提供的实施例,配置文件可以是每个程序项目中的“reducers.js”文件。
将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中,以使所述目标功能模块与所述程序项目中的其他功能模块进行关联。
这里,在创建功能模块后,在程序项目中自动修改该配置文件,将用户创建的目标功能模块名称写入该配置文件,从而把新创建的功能模块关联到该程序项目中,与该程序项目中的其他功能模块进行关联,实现与其它功能模块之间数据共享。将目标功能模块文件的目标功能模块名称添加至配置文件中的效果图参见如图3(d)所示的界面示意图。延续上一实施例,如图3(d)所示,在“analytic” 目标功能模块创建好后,在“reducers.js”文件中添加目标功能模块文件的目标功能模块名称,与该程序项目中的其他功能模块进行关联。
将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中之后,所述创建方法还包括:
基于所述程序项目预设的代码格式化规则对所述配置文件中的代码语言进行格式化检测,以使所述配置文件中的代码语言满足所述代码格式化规则。
需要说明的是,代码格式化规则指的是一种语法规则和代码风格的检查工具。根据本申请提供的实施例,该代码格式化规则可以是ESLint ,ESLint 是一个插件化并且可配置的 JavaScript 语法规则和代码风格的检查工具,ESLint 是在 ECMAScript/JavaScript 代码中识别和报告模式匹配的工具,它的目标是保证代码的一致性和避免错误。
这里,当配置文件修改好后,根据程序项目中预先配置好的代码格式化规则对配置文件中的代码语言进行格式化检测,当有不满足JavaScript 语法规则和代码风格的地方会自动产生高亮标记,以使开发人员可以快速发现有问题的代码段,及时对有错误的代码进行修改,以使配置文件中的代码语言满足所述代码格式化规则。
本申请实施例提供的功能模块文件的创建方法,与现有技术中的功能模块文件的创建方法相比,可以根据用户选择的功能模块类型和用户所操作的程序项目对应的代码语言类型,自动调取预先构建好的功能模块模板文件,无需用户手动对功能模块模板文件中的框架代码进行复制粘贴,提高了程序项目开发的效率,并且创建的功能模块模板文件所使用的代码语言类型与当前程序项目所使用的代码语言类型相同,避免了由于用户自行粘贴的框架代码的代码语言类型与程序项目所使用的代码语言类型不同而导致的报错问题。
请参阅图4,图4为本申请实施例所提供的一种功能模块文件的创建装置的结构示意图。如图4中所示,所述创建装置400包括:
第一确定模块401,用于基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;
第二确定模块402,用于接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;
功能模块模板文件调取模块403,用于从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;
目标功能模块文件生成模块404,用于将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发。
进一步的,所述目标功能模块文件生成模块404,还用于:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
进一步的,所述创建装置400还包括功能模块模板库构建模块405,所述功能模块模板库构建模块405,用于:
针对至少一个功能模块类型中的每个功能模块类型,构建该功能模块类型对应的功能模块模板文件;所述功能模块类型包括模块、类组件、函数组件、容器、分类器和管理模块;
根据至少一个程序项目对应的代码语言类型生成与所述代码语言类型对应的功能模块模板文件;所述代码语言类型包括脚本语言和编程语言;
将所述功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至所述功能模块模板库中。
进一步的,所述第二确定模块402在接收构建所述程序项目所需的功能模块的创建请求时,还用于:
响应于用户在程序项目中对于目标按键的触发操作,显示功能模块创建界面;
响应于用户在所述功能模块创建界面中对于所述目标功能模块的功能模块类型的选择操作,接收基于对所述功能模块创建界面中功能模块类型的选择操作发送的所述目标功能模块的功能模块类型,并显示功能模块名称输入界面;
接收基于对功能模块名称输入界面中目标功能模块名称的确定操作发送的目标功能模块的目标功能模块名称。
进一步的,所述创建装置400还包括配置文件生成模块406,所述配置文件生成模块406,用于:
获取所述程序项目的配置文件;
将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中,以使所述目标功能模块与所述程序项目中的其他功能模块进行关联。
进一步的,所述配置文件生成模块406将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中之后,还用于:
基于所述程序项目预设的代码格式化规则对所述配置文件中的代码语言进行格式化检测,以使所述配置文件中的代码语言满足所述代码格式化规则。
请参阅图5,图5为本申请实施例所提供的一种电子设备的结构示意图。如图5中所示,所述电子设备500包括处理器510、存储器520和总线530。
所述存储器520存储有所述处理器510可执行的机器可读指令,当电子设备500运行时,所述处理器510与所述存储器520之间通过总线530通信,所述机器可读指令被所述处理器510执行时,可以执行如上述图1以及图2所示方法实施例中的功能模块文件的创建方法的步骤,解决了现有技术中功能模块文件的创建速度较慢的问题,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1以及图2所示方法实施例中的功能模块文件的创建方法的步骤,解决了现有技术中功能模块文件的创建速度较慢的问题,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种功能模块文件的创建方法,其特征在于,所述创建方法包括:
基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;
接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;
从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;
将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发;
在接收构建所述程序项目所需的功能模块的创建请求之前,所述创建方法还包括:
针对至少一个功能模块类型中的每个功能模块类型,构建该功能模块类型对应的功能模块模板文件;所述功能模块类型包括模块、类组件、函数组件、容器、分类器和管理模块;
根据至少一个程序项目对应的代码语言类型生成与所述代码语言类型对应的功能模块模板文件;所述代码语言类型包括脚本语言和编程语言;
将所述功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至所述功能模块模板库中。
2.根据权利要求1所述的创建方法,其特征在于,在得到所述目标功能模块文件后,所述创建方法还包括:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
3.根据权利要求1所述的创建方法,其特征在于,所述接收构建所述程序项目所需的功能模块的创建请求,包括:
响应于用户在程序项目中对于目标按键的触发操作,显示功能模块创建界面;
响应于用户在所述功能模块创建界面中对于所述目标功能模块的功能模块类型的选择操作,接收基于对所述功能模块创建界面中功能模块类型的选择操作发送的所述目标功能模块的功能模块类型,并显示功能模块名称输入界面;
接收基于对功能模块名称输入界面中目标功能模块名称的确定操作发送的目标功能模块的目标功能模块名称。
4.根据权利要求1所述的创建方法,其特征在于,在得到所述目标功能模块文件后,所述创建方法还包括:
获取所述程序项目的配置文件;
将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中,以使所述目标功能模块与所述程序项目中的其他功能模块进行关联。
5.根据权利要求4所述的创建方法,其特征在于,将所述目标功能模块文件的目标功能模块名称添加至所述配置文件中之后,所述创建方法还包括:
基于所述程序项目预设的代码格式化规则对所述配置文件中的代码语言进行格式化检测,以使所述配置文件中的代码语言满足所述代码格式化规则。
6.一种功能模块文件的创建装置,其特征在于,所述创建装置包括:
第一确定模块,用于基于用户所操作的程序项目,确定所述程序项目对应的代码语言类型;
第二确定模块,用于接收构建所述程序项目所需的功能模块的创建请求,解析所述创建请求,以得到所述创建请求中携带的目标功能模块的功能模块类型、目标功能模块的目标功能模块名称和用户所操作的程序项目对应的程序文件的目标目录;
功能模块模板文件调取模块,用于从预先存储的功能模块模板库中,基于所述目标功能模块的功能模块类型调取与所述代码语言类型对应的功能模块模板文件;
目标功能模块文件生成模块,用于将所述功能模块模板文件的初始名称替换为所述目标功能模块名称,得到目标功能模块文件,以使用户在所述目标功能模块文件中对所述目标功能模块进行代码开发;
所述创建装置还包括功能模块模板库构建模块,所述功能模块模板库构建模块用于:
针对至少一个功能模块类型中的每个功能模块类型,构建该功能模块类型对应的功能模块模板文件;所述功能模块类型包括模块、类组件、函数组件、容器、分类器和管理模块;
根据至少一个程序项目对应的代码语言类型生成与所述代码语言类型对应的功能模块模板文件;所述代码语言类型包括脚本语言和编程语言;
将所述功能模块类型、代码语言类型以及所对应的功能模块模板文件以映射关系存储至所述功能模块模板库中。
7.根据权利要求6所述的创建装置,其特征在于,所述目标功能模块文件生成模块在得到所述目标功能模块文件后,所述目标功能模块文件生成模块还用于:
将所述目标功能模块文件添加至所述程序项目的目标目录中。
8.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过所述总线进行通信,所述机器可读指令被所述处理器运行时执行如权利要求1至5任一所述的功能模块文件的创建方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至5任一所述的功能模块文件的创建方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111316689.5A CN113760266B (zh) | 2021-11-09 | 2021-11-09 | 一种功能模块文件的创建方法、创建装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111316689.5A CN113760266B (zh) | 2021-11-09 | 2021-11-09 | 一种功能模块文件的创建方法、创建装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113760266A CN113760266A (zh) | 2021-12-07 |
CN113760266B true CN113760266B (zh) | 2022-02-25 |
Family
ID=78784652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111316689.5A Active CN113760266B (zh) | 2021-11-09 | 2021-11-09 | 一种功能模块文件的创建方法、创建装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113760266B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114610313B (zh) * | 2022-02-28 | 2023-12-26 | 浪潮(山东)计算机科技有限公司 | 一种生成spec文档的方法、系统、装置及介质 |
CN116048480B (zh) * | 2023-04-04 | 2023-06-09 | 青岛普瑞盛医药科技有限公司 | 一种基于代码工具自动生成图表的方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832365B1 (en) * | 2000-10-11 | 2004-12-14 | Microsoft Corporation | System and method for interacting with computer programming languages at semantic level |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103135976B (zh) * | 2011-11-30 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 代码自动生成方法及装置 |
CN106502663A (zh) * | 2016-10-17 | 2017-03-15 | 成都知道创宇信息技术有限公司 | 一种前端项目框架生成方法 |
CN109240670A (zh) * | 2018-11-21 | 2019-01-18 | 北京锐安科技有限公司 | 模块化的软件开发方法、系统、设备及介质 |
-
2021
- 2021-11-09 CN CN202111316689.5A patent/CN113760266B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832365B1 (en) * | 2000-10-11 | 2004-12-14 | Microsoft Corporation | System and method for interacting with computer programming languages at semantic level |
Also Published As
Publication number | Publication date |
---|---|
CN113760266A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3876116B1 (en) | Method and apparatus for running mini program, electronic device, and storage medium | |
CN108762743B (zh) | 一种数据表操作代码生成方法及装置 | |
US8352913B2 (en) | Generating and resolving component names in an integrated development environment | |
CN113760266B (zh) | 一种功能模块文件的创建方法、创建装置和电子设备 | |
CN111552627A (zh) | 用户界面测试方法、装置、存储介质及计算机设备 | |
CN106293675B (zh) | 系统静态资源加载方法及装置 | |
CN109308254B (zh) | 一种测试方法、装置及测试设备 | |
US9141344B2 (en) | Hover help support for application source code | |
EP3314409B1 (en) | Tracing dependencies between development artifacts in a software development project | |
CN111399840A (zh) | 一种模块开发方法及装置 | |
CN114036443A (zh) | 页面生成方法及装置 | |
US11604662B2 (en) | System and method for accelerating modernization of user interfaces in a computing environment | |
CN114579452A (zh) | 接口影响检测方法及相关设备 | |
CN115543324B (zh) | 交互界面的生成方法、装置、设备及介质 | |
CN115469849B (zh) | 一种业务处理系统、方法、电子设备和存储介质 | |
CN111736812A (zh) | 文档代码执行方法、装置、计算机设备及存储介质 | |
CN112667202B (zh) | Mda与bpmn相结合的软件设计方法和装置 | |
JP6551082B2 (ja) | テスト支援装置、テスト支援方法およびテスト支援プログラム | |
CN114579461A (zh) | 浏览器兼容性检测方法及相关设备 | |
CN109117176B (zh) | 一种基于主机的版本自动部署方法及系统 | |
CN114090002A (zh) | 前端界面构建方法、装置、电子设备和存储介质 | |
CN114115855A (zh) | 代码复用方法及装置、计算机可读存储介质、电子设备 | |
US11113359B1 (en) | Method and system for navigation control | |
AU2018313995B2 (en) | Systems and methods for providing globalization features in a service management application interface | |
CN117873466A (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 |