CN107748658B - 一种软件开发方法、系统、计算机可读存储介质及电子设备 - Google Patents
一种软件开发方法、系统、计算机可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN107748658B CN107748658B CN201710917490.5A CN201710917490A CN107748658B CN 107748658 B CN107748658 B CN 107748658B CN 201710917490 A CN201710917490 A CN 201710917490A CN 107748658 B CN107748658 B CN 107748658B
- Authority
- CN
- China
- Prior art keywords
- processing module
- software
- configuration file
- browser
- module
- 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/20—Software design
- G06F8/22—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- 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)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供的软件开发方法、系统、计算机可读存储介质及电子设备中,核心处理模块接收由开发人员编写的与一待开发软件对应的第一配置文件,核心处理模块对第一配置文件进行解析,获取第一配置文件的查询语句;对查询语句进行处理,以获得查询语句的运行结果。核心处理模块获得与待开发软件对应的第二配置文件,并根据第二配置文件配置待开发软件的界面。核心处理模块接收并响应开发人员的至少一个关联操作,将运行结果对应的封装模块与界面进行关联,从而完成对待开发软件的开发。与现有的软件开发方法相比,需要开发人员完成的步骤大大减少,能够同时降低沟通成本以及技术门槛。
Description
技术领域
本申请涉及软件技术领域,具体而言,涉及一种软件开发方法、系统、计算机可读存储介质及电子设备。
背景技术
在软件开发过程中,通常会将软件分为前端、后端两部分,分别由前端开发人员、后端开发人员开发。前端开发所需的工具包括JavaScript、Jquery Easy UI等,后端开发所需的工具包括SSH(Struts2+Spring+Hibernate)或SSM(Struts2+Spring+Mybatis)等。为满足开发需求,前端开发人员需要精通一种前端开发工具,后端开发人员需要精通三种以上的后端开发工具。在现有技术中,在前端开发人员与后端开发人员共同开发一软件过程中,即使将软件的开发需求描述得非常具体且清楚,也需要前端开发人员与后端开发人员之间进行频繁沟通,才能做到良好衔接。
若前端开发人员与后端开发人员是一个人负责,虽然可以避免前端开发人员与后端开发人员之间的频繁沟通,但是对开发人员的要求较高,需要较高的技术门槛。
总之,在本申请发明人实现本申请发明的过程中,至少发现:现有技术中在软件开发过程中,存在对开发人员要求较低和实现高开发效率不能兼顾的技术问题。
申请内容
本申请实施例提供了一种软件开发方法、系统、计算机可读存储介质及电子设备。
一方面,本申请实施例提供了一种软件开发方法,所述方法包括:所述软件开发系统中的核心处理模块接收由开发人员编写的与一待开发软件对应的第一配置文件;所述核心处理模块对所述第一配置文件进行解析,获取所述第一配置文件的查询语句;所述核心处理模块对所述查询语句进行处理,以获得所述查询语句的运行结果;所述核心处理模块获得并基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面;所述核心处理模块接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发。通过本实施例提供的方案,开发人员提供第一配置文件、第二配置文件以及关联操作便可以完成待开发软件的开发,在降低了开发人员开发软件的技术门槛的同时,还提高了软件开发效率,进而有效解决了现有技术中在软件开发过程中,存在对开发人员要求较低和实现高开发效率不能兼顾的技术问题。
在一个可能的设计中,所述核心处理模块从所述软件开发系统中的IDE模块获得与所述待开发软件对应的第二配置文件;所述核心处理模块基于所述第二配置文件配置所述待开发软件的界面。或者所述核心处理模块接收所述开发人员编写的与所述待开发软件对应的第二配置文件;所述核心处理模块基于所述第二配置文件配置所述待开发软件的界面。可见,在本申请中,第二配置文件可以经IDE模块获得,也可以直接由开发人员编写。具体的,IDE模块可以通过响应用户拖拽控件而生成对应的第二配置文件,使开发人员更直观地感知第二配置文件生成的界面,可见,在本申请中,第二配置文件的获得方式具有多样化的优点,这也有助于软件开发效率的提升。
在一个可能的设计中,所述核心处理模块接收用户发送的第一模块点击请求,在所述核心处理模块的一map对象中查找是否有与所述第一模块点击请求对应的第一模块对应的第一模块配置文件的第一路径;若是,所述核心处理模块获取并解析所述第一模块配置文件,以获得的第一页面对象;所述核心处理模块读取所述第一页面对象中的第一页面组件信息。即在本申请中,在获取用户的模块点击请求后,是先判断该模块点击请求对应的模块的模块配置文件是否被加载,若未被加载可以选择执行结束操作,进而可以提高软件运行速度。
在一个可能的设计中,所述核心处理模块根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器;若所述浏览器是所述PC端浏览器,所述软件开发系统的页面端处理模块通过dhtmlx的语法对所述第一页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码;若所述浏览器是所述移动端浏览器,所述软件开发系统的移动端处理模块通过vue的语法对所述第一页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。可见,在本申请中,软件开发系统在用户通过浏览器访问开发完成后的软件时可以判断浏览器的类型,并根据浏览器的类型选择相应的语法对页面信息组件进行适应性处理,以使生成的代码与浏览器的类型适配。避免由于与浏览器的类型不适配而造成用户体验下降。
在一个可能的设计中,所述核心处理模块获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器;所述PC端浏览器用于根据所述第一JavaScript代码以及第一html代码展示第一界面;或所述核心处理模块获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器;其中,所述移动端浏览器用于根据所述第二JavaScript代码以及第二html代码展示第二界面。可见,在本申请中,通过将与浏览器的类型对应的JavaScript代码以及html代码返回给浏览器,浏览器便能够展示相应的界面,进而能够避免界面与浏览器类型不一致造成信息浏览时的不便,起到确保界面能够在浏览器上正常浏览的技术效果。
另一方面,本申请实施例还提供了一种软件开发系统,所述系统包括:核心处理模块,封装有Spring MVC模块、JPA模块、MyBatis模块。其中,所述核心处理模块包括:接收单元、解析单元、处理单元、配置单元以及关联单元。接收单元用于接收由开发人员编写的与一待开发软件对应的第一配置文件;解析单元用于对所述第一配置文件进行解析,获取所述第一配置文件的查询语句;处理单元用于对所述查询语句进行处理,以获得所述查询语句的运行结果;配置单元用于基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面;关联单元用于接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发。通过本实施例提供的方案,开发人员提供第一配置文件、第二配置文件以及关联操作便可以完成待开发软件的开发,在降低了开发人员开发软件的技术门槛的同时,还提高了软件开发效率,进而有效解决了现有技术中在软件开发过程中,存在对开发人员要求较低和实现高开发效率不能兼顾的技术问题。
在一个可能的设计中,所述配置单元包括:第一配置子单元或第二配置子单元。第一配置子单元用于从所述软件开发系统中的IDE模块获得与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面。第二配置子单元用于接收所述开发人员编写的与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面。第二配置文件可以经IDE模块获得,也可以直接由开发人员编写。IDE模块可以通过用户拖拽控件而生成对应的第二配置文件,使开发人员更直观地感知第二配置文件生成的界面,可见,在本申请中,第二配置文件的获得方式具有多样化的优点,这也有助于软件开发效率的提升。
在一个可能的设计中,所述核心处理模块还包括:路径查找单元、页面对象单元以及组件读取单元。路径查找单元用于接收用户发送的模块点击请求,在所述核心处理模块的一map对象中查找是否有与所述模块点击请求对应的模块对应的配置文件的路径。页面对象单元用于获取所述配置文件解析后获得的页面对象。组件读取单元用于读取所述第一页面对象中的第一页面组件信息。即在本申请中,在获取用户的模块点击请求后,先判断该模块点击请求对应的模块的模块配置文件是否被加载,若未被加载可以选择执行结束操作,进而可以提高软件运行速度。
在一个可能的设计中,所述系统还包括页面端处理模块以及移动端处理模块,所述页面端处理模块以及移动端处理模块均与所述核心处理模块连接。所述核心处理模块用于根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器。若所述浏览器是PC端浏览器,所述页面端处理模块用于获取所述页面组件信息并通过dhtmlx的语法对所述页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码。若所述浏览器是移动端浏览器,所述移动端处理模块用于获取所述页面组件信息并通过vue的语法对所述页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。可见,在本申请中,软件开发系统在用户通过浏览器访问开发完成后的软件时可以判断浏览器的类型,并根据浏览器的类型选择相应的语法对页面信息组件进行适应性处理,以使生成的代码与浏览器的类型适配。避免由于与浏览器的类型不适配而造成用户体验下降。
在一个可能的设计中,所述核心处理模块还包括:第一返回单元,用于获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器;第二返回单元,用于获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器。可见,在本申请中,通过将与浏览器的类型对应的JavaScript代码以及html代码返回给浏览器,浏览器便能够展示相应的界面,进而能够避免界面与浏览器类型不一致,造成信息浏览时的不便,起到确保界面能够在浏览器上正常浏览的技术效果。。
再一方面,本发明实施例提供了一种计算机可读存储介质,用于存储计算机指令,该计算机指令包含用于执行上述方法所对应的程序。
再一方面,本发明实施例提供了一种电子设备,包括处理器以及计算机可读存储介质,计算机可读存储介质用于存储计算机指令,该计算机指令在被处理器读取并被运行时,执行上述方法所对应的程序。
附图说明
为了更清楚的说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的软件开发系统的结构框图;
图2是本申请第一实施例提供的软件开发方法的流程图;
图3是本申请第一实施例提供的软件开发方法的部分步骤的流程示意图;
图4是本申请第二实施例提供的软件开发系统中的核心处理模块的结构框图;
图5是本申请第二实施例提供的软件开发系统的结构框图。
具体实施方式
现有的技术开发人员通常会利用计算机来开发软件,计算机通常会安装有Java开发管理信息系统(Management Information System,简称MIS),该系统的后端大多数采用SSH(Struts2+Spring+Hibernate)或SSM(Struts2+Spring+Mybatis),前端则大多数采用JavaScript、Jquery Easy UI。
在实际开发中,开发人员通常会创建一个mapping文件,mapping文件通常为XML格式,开发人员把程序语句写入该mapping文件中。开发人员创建数据访问对象(Data AccessObject,简称DAO)接口。DAO接口中装有方法,该方法可以匹配到mapping文件,获取mapping文件中的程序语句,并且把程序语句发送给Mybatis处理,以获得程序语句的运行结果。开发人员还需要创建逻辑层,并且通过逻辑层调用DAO接口中的方法;开发人员还需要创建控制层,并通过控制层调用逻辑层返回的数据。开发人员还需要根据JavaScript配置软件的界面,再编写界面与控制层的交互语言,完成待开发软件的开发。
可以看出,在现有技术中,若开发人员完成待开发软件的开发工作,需要创建mapping文件、DAO接口、逻辑层、控制层,配置界面,并编写界面与控制层的交互语言,若上述工作由多个人完成,则需要多个人之间进行较为频繁的沟通;若上述工作由一个人完成,则需要独自完成上述工作的人有着较高的技术水平,存在对开发人员要求低与实现高开发效率不能兼顾的技术问题。
为解决上述技术问题,本申请实施例提供了如下的软件开发方法和系统,下面将结合附图,对本申请实施例中的软件开发方法和系统进行详细介绍。
请参见图1,本申请实施例提供了一种软件开发系统,该系统包括核心处理模块310、页面端处理模块320、移动端处理模块330以及IDE模块340,页面端处理模块320、移动端处理模块330以及IDE模块340均与核心处理模块310连接。
核心处理模块310是该软件开发系统中接收配置文件并对配置文件进行具体处理的模块。页面端处理模块320用于生成显示在PC端浏览器的界面的代码;移动端处理模块330用于生成显示在移动端浏览器的界面的代码。IDE模块340用于根据用户拖拽控件的控件类型以及控件的位置生成配置文件。
第一实施例
请参见图2,图2示出了第一实施例提供的软件开发方法的流程图,具体包括如下步骤:
步骤S110,所述软件开发系统中的核心处理模块310接收由开发人员编写的与一待开发软件对应的第一配置文件。
核心处理模块310为该软件开发系统中接收配置文件并对配置文件进行具体处理的模块,核心处理模块310可以封装有Spring MVC模块、JPA模块以及MyBatis模块等,核心处理模块310具体可以接收配置文件,并依据自身封装的多个模块之间的相互配合来对配置文件进行处理。
第一配置文件为开发人员编写的文件,具体可以是XML文件,且该XML文件中可以包括有与待开发软件欲实现功能相关的编程语言;例如,具体可以包括结构化查询语言(Structured Query Language,简称SQL)。
步骤S120,所述核心处理模块310对所述第一配置文件进行解析,获取所述第一配置文件的查询语句。
核心处理模块310可以依据自身封装的多个模块之间的相互配合来对第一配置文件解析,以获得包含在第一配置文件中查询语句。
核心处理模块310具体可以封装有数据访问对象(Data Access Object,简称DAO)接口,该接口内装有一个匹配方法,该匹配方法可以匹配到第一配置文件,获取到第一配置文件中的查询语句,并且把该查询语句如SQL发送给MyBatis模块。
步骤S130,所述核心处理模块310对所述查询语句进行处理,以获得所述查询语句的运行结果。
核心处理模块310通过封装的多个模块的运行以及调用关系来对处理该查询语句。具体可以通过MyBatis模块处理SQL,以获得SQL的运行结果。
核心处理模块310还封装有逻辑层的文件以及控制层的文件,该逻辑层的文件能够调用数据访问对象接口中的上述匹配方法。该控制层的文件能够根据前端发送的请求调用逻辑层的文件返回的数据。
因此,控制层的文件根据用户的请求来调用逻辑层的文件返回的数据,而逻辑层返回的数据是通过调用数据访问对象接口中的匹配方法获得的,数据访问对象接口中的匹配方法的作用是获取第一配置文件中的查询语句,并把所述查询语句发送给MyBatis模块,以使MyBatis模块获得所述查询语句的运行结果。
所以,核心处理模块310根据MyBatis模块的处理过程,数据访问对象接口、逻辑层的文件以及控制层的文件之间的调用关系,获得查询语句的运行结果。
步骤S140,所述核心处理模块310获得并基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面。
第二配置文件也可以是XML文件,且该XML文件中可以包括有与待开发软件欲呈现界面相关的编程语言。核心处理模块310能够根据第二配置文件中的编程语言配置待开发软件的界面。
第二配置文件具体可以通过如下方式获得:
核心处理模块310可以从所述软件开发系统中的IDE模块340获得与所述待开发软件对应的第二配置文件。
IDE模块340为集成开发环境(Integrated Development Environment)模块,该IDE模块340可以提供多个控件给开发人员选择,多个控件包括搜索框、按钮、表格等。开发人员可以通过拖拽控件的方式来进行待开发软件的界面的配置,IDE模块340可以根据开发人员拖拽的控件的控件类型以及控件所放置的位置来生成第二配置文件。
核心处理模块310还可以接收所述开发人员编写的与所述待开发软件对应的第二配置文件。第二配置文件获得的具体方式不应该理解为是对本申请的限制。可见,在本申请中,第二配置文件的获得方式具有多样化的优点,这也有助于软件开发效率的提升。
步骤S150,所述核心处理模块310接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发。
核心处理模块310根据开发人员的关联操作对步骤S140获得的界面以及步骤S130获得的运行结果对应的封装模块进行关联。
开发人员具体可以编写JavaScript语言来实现控制层与界面的交互,进而完成该待开发软件的开发。
通过本实施例提供的方案,开发人员提供第一配置文件、第二配置文件以及关联操作便可以完成待开发软件的开发,在降低了开发人员开发软件的技术门槛的同时,还提高了软件开发效率,进而有效解决了现有技术中在软件开发过程中,存在对开发人员要求较低和实现高开发效率不能兼顾的技术问题。
请参见图3,在步骤S150之后,第一实施例示出的软件开发方法还包括:
步骤S160,所述核心处理模块310接收用户发送的第一模块点击请求。
用户可以通过浏览器访问经步骤S110至步骤S150开发完成的软件,当用户点击该软件的界面的可点击模块时,核心处理模块310可以接收到相应的模块点击请求。可点击模块具体可以包括显示图、按钮等。
步骤S170,在所述核心处理模块310的一map对象中查找是否有与所述第一模块点击请求对应的第一模块对应的第一模块配置文件的第一路径,若是,执行步骤S180。
每个模块点击请求均对应有相应的模块配置文件,模块点击请求与模块配置文件可以是一对一的对应关系,也可以是一对多的对应关系。模块配置文件可以为XML文件。
核心处理模块310还包括有一map对象,该map对象内存储有被加载的模块的模块配置文件的路径。
核心处理模块310在该map对象中查找与第一模块点击请求对应的第一模块对应的第一模块配置文件的第一路径,若该map对象中存储有第一模块配置文件的第一路径,则说明第一模块配置文件被加载,则继续执行步骤S180。若该map对象中未存储第一路径,则说明第一模块配置文件未被加载,则核心处理模块310可以返回页面错误提示信息。
步骤S180,所述核心处理模块310获取并解析所述第一模块配置文件,以获得的第一页面对象。
核心处理模块310对模块配置文件进行解析获得页面对象的过程可以发生在该软件开发完成并加载完成时。
开发完成的软件的加载过程如下:软件开发系统分别加载多种配置文件、多种接口以及核心处理模块310。多种配置文件包括Spring配置文件、Mybatis配置文件、shiro配置文件、软件开发系统前端界面的配置文件等。多种接口包括Mybatis通用接口、Java持久层API(JPA)接口、安全控制接口等。加载核心处理模块310具体可以加载基于核心处理模块310开发的辅助模块或子项目,提供资源访问、项目授权、个性化配置等。
步骤S190,所述核心处理模块310读取所述第一页面对象中的第一页面组件信息。
页面对象中可以包括多个页面组件信息,页面组件信息为页面组件对应的信息,页面组件包括表格、显示栏、按钮等可以在界面展现的组件。
即在本申请中,在获取用户的模块点击请求后,是先判断该模块点击请求对应的模块的模块配置文件是否被加载,若未被加载可以选择执行结束操作,进而可以提高软件运行速度。
步骤S200,所述核心处理模块310根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器,若是移动端浏览器,执行步骤S210;若是PC端浏览器,执行步骤S230。
用户通过浏览器访问经步骤S110至步骤S150开发完成的软件时,会向核心处理模块310发送页面访问请求,该页面访问请求包括浏览器类型、浏览器名称、运行该浏览器的系统类型等信息。核心处理器可以根据页面访问请求来判断浏览器类型为PC端浏览器还是移动端浏览器。若浏览器类型为移动端浏览器,则执行步骤S210;若浏览器类型为PC端浏览器,则执行步骤S230。
步骤S210,所述软件开发系统的移动端处理模块330通过vue的语法对所述第一页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。
实例化是指在面向对象的编程中,把用类创建对象的过程。软件开发系统包括移动端处理模块330,该移动端处理模块330通过vue的语法对第一页面组件信息进行实例化处理,vue的语法用来对页面组件信息进行处理,并生成适应于移动端界面的JavaScript代码以及html代码。
可见,在本申请中,软件开发系统在用户通过浏览器访问开发完成后的软件时可以判断浏览器的类型,并根据浏览器的类型选择相应的语法对页面信息组件进行适应性处理,以使生成的代码与浏览器的类型适配。避免由于与浏览器的类型不适配而造成用户体验下降。
步骤S220,所述核心处理模块310获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器;其中,所述移动端浏览器用于根据所述所述第二JavaScript代码以及第二html代码展示第二界面。
核心处理模块310获取第二JavaScript代码以及所述第二html代码,并将第二JavaScript代码以及所述第二html代码返回给移动端浏览器,移动端浏览器可以根据第二JavaScript代码以及所述第二html代码展示第二界面。第二界面为适合于在移动端展示的界面。
可见,在本申请中,通过将与浏览器的类型对应的JavaScript代码以及html代码返回给浏览器,浏览器便能够展示相应的界面,进而能够避免界面与浏览器类型不一致造成信息浏览时的不便,起到确保界面能够在浏览器上正常浏览的技术效果。
步骤S230,所述软件开发系统的页面端处理模块320通过dhtmlx的语法对所述第一页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码。
DHTMLX组件是一个JavaScript库,提供了一套完整的Ajax驱动的UI组件。页面端处理模块320通过dhtmlx的语法对第一页面组件信息进行实例化处理。dhtmlx的语法用来对页面组件信息进行处理,并生成适应于PC端界面的JavaScript代码以及html代码。
步骤S240,所述核心处理模块310获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器;所述PC端浏览器用于根据所述第一JavaScript代码以及第一html代码展示第一界面。
核心处理模块310获取第一JavaScript代码以及所述第一html代码,并把第一JavaScript代码以及所述第一html代码返回给PC端浏览器,PC端浏览器可以根据第一JavaScript代码以及所述第一html代码展示第一界面。第一界面为适合于在PC端展示的界面。
本申请第一实施例提供的软件开发方法能够在开发人员提供第一配置文件、第二配置文件以及界面与封装模块之间交互的配置文件的情况下快速完成软件的开发,且在软件开发完成后,可以较为合适的分别显示在移动端浏览器以及PC端浏览器,与现有的软件开发方法相比,需要开发人员完成的开发操作大大减少,有利于提高软件开发的效率,降低软件开发的技术门槛。
第二实施例
请参见图4,图4示出了软件开发系统中核心处理模块310的结构框图,该模块310包括:
接收单元311,用于接收由开发人员编写的与一待开发软件对应的第一配置文件。
解析单元312,用于对所述第一配置文件进行解析,获取所述第一配置文件的查询语句。
处理单元313,用于对所述查询语句进行处理,以获得所述查询语句的运行结果。
配置单元314,用于基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面。
配置单元具体可以包括第一配置子单元(图未示)或第二配置子单元(图未示),其中,第一配置子单元,用于从所述软件开发系统中的IDE模块340获得与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面。
第二配置子单元,用于接收所述开发人员编写的与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面。
关联单元315,用于接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发。
在本申请第二实施例的一种具体实施方式中,核心处理模块310还包括:路径查找单元(图未示)、页面对象单元(图未示)以及组件读取单元(图未示)。
路径查找单元,用于接收用户发送的模块点击请求,在所述核心处理模块310的一map对象中查找是否有与所述模块点击请求对应的模块对应的配置文件的路径。
页面对象单元,用于获取所述配置文件解析后获得的页面对象。
组件读取单元,用于读取所述页面对象中的页面组件信息。
请参见图5,软件开发系统300还包括页面端处理模块320以及移动端处理模块330,所述页面端处理模块320以及移动端处理模块330均与所述核心处理模块310连接。
核心处理模块310用于根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器。
若浏览器是PC端浏览器,页面端处理模块320用于获取所述页面组件信息并通过dhtmlx的语法对所述页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码。
若浏览器是移动端浏览器,移动端处理模块330用于获取所述页面组件信息并通过vue的语法对所述页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。
在另一具体实施方式中,核心处理模块310还可以包括第一返回单元(图未示)或第二返回单元(图未示)。第一返回单元用于获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器。第二返回单元用于获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器。
本申请第二实施例提供的软件开发系统与本申请第一实施例提供的软件开发方法相对应,在此便不做赘述。
本申请实施例提供的软件开发方法及软件开发系统获取第一配置文件,并对第一配置文件处理,从而获得其中的查询语句以及查询语句的运行结果;然后获取第二配置文件并基于第二配置文件配置界面,然后建立界面与运行结果对应的封装模块之间的关联,与现有的软件开发方法相比,需要开发人员完成的步骤大大减少,能够同时降低沟通成本以及技术门槛。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种软件开发方法,其特征在于,应用于软件开发系统,所述方法包括:
所述软件开发系统中的核心处理模块接收由开发人员编写的与一待开发软件对应的第一配置文件;
所述核心处理模块对所述第一配置文件进行解析,获取所述第一配置文件的查询语句;
所述核心处理模块对所述查询语句进行处理,以获得所述查询语句的运行结果;
所述核心处理模块获得并基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面;
所述核心处理模块接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发;
所述核心处理模块接收用户发送的第一模块点击请求,在所述核心处理模块的一map对象中查找是否有与所述第一模块点击请求对应的第一模块对应的第一模块配置文件的第一路径;
若是,所述核心处理模块获取并解析所述第一模块配置文件,以获得的第一页面对象;
所述核心处理模块读取所述第一页面对象中的第一页面组件信息。
2.根据权利要求1所述的方法,其特征在于,所述核心处理模块获得并基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面,包括:
所述核心处理模块从所述软件开发系统中的IDE模块获得与所述待开发软件对应的第二配置文件;所述核心处理模块基于所述第二配置文件配置所述待开发软件的界面;或
所述核心处理模块接收所述开发人员编写的与所述待开发软件对应的第二配置文件;所述核心处理模块基于所述第二配置文件配置所述待开发软件的界面。
3.根据权利要求1所述的方法,其特征在于,所述核心处理模块读取所述第一页面对象中的第一页面组件信息之后,所述方法还包括:
所述核心处理模块根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器;
若所述浏览器是所述PC端浏览器,所述软件开发系统的页面端处理模块通过dhtmlx的语法对所述第一页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码;
若所述浏览器是所述移动端浏览器,所述软件开发系统的移动端处理模块通过vue的语法对所述第一页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述核心处理模块获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器;所述PC端浏览器用于根据所述第一JavaScript代码以及第一html代码展示第一界面;或
所述核心处理模块获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器;其中,所述移动端浏览器用于根据所述所述第二JavaScript代码以及第二html代码展示第二界面。
5.一种软件开发系统,其特征在于,包括:
核心处理模块,封装有Spring MVC模块、JPA模块、MyBatis模块;
其中,所述核心处理模块包括:
接收单元,用于接收由开发人员编写的与一待开发软件对应的第一配置文件;
解析单元,用于对所述第一配置文件进行解析,获取所述第一配置文件的查询语句;
处理单元,用于对所述查询语句进行处理,以获得所述查询语句的运行结果;
配置单元,用于基于与所述待开发软件对应的第二配置文件配置所述待开发软件的界面;
关联单元,用于接收并响应所述开发人员的至少一个关联操作,将所述运行结果对应的封装模块与所述界面进行关联,进而完成所述待开发软件的开发;
所述核心处理模块还包括:
路径查找单元,用于接收用户发送的第一模块点击请求,在所述核心处理模块的一map对象中查找是否有与所述第一模块点击请求对应的第一模块对应的第一模块配置文件的第一路径;
页面对象单元,用于获取所述第一模块配置文件解析后获得的第一页面对象;
组件读取单元,用于读取所述第一页面对象中的第一页面组件信息。
6.根据权利要求5所述的系统,其特征在于,所述配置单元包括:
第一配置子单元,用于从所述软件开发系统中的IDE模块获得与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面;或
第二配置子单元,用于接收所述开发人员编写的与所述待开发软件对应的第二配置文件,基于所述第二配置文件配置所述待开发软件的界面。
7.根据权利要求5所述的系统,其特征在于,所述系统还包括页面端处理模块以及移动端处理模块,所述页面端处理模块以及移动端处理模块均与所述核心处理模块连接;
所述核心处理模块用于根据浏览器发送的页面访问请求,判断所述浏览器为PC端浏览器还是移动端浏览器;
若所述浏览器是PC端浏览器,所述页面端处理模块用于获取所述第一页面组件信息并通过dhtmlx的语法对所述第一页面组件信息进行实例化处理,获得第一JavaScript代码以及第一html代码;
若所述浏览器是移动端浏览器,所述移动端处理模块用于获取所述页面组件信息并通过vue的语法对所述第一页面组件信息进行实例化处理,获得第二JavaScript代码以及第二html代码。
8.根据权利要求7所述的系统,其特征在于,所述核心处理模块还包括:
第一返回单元,用于获取并返回所述第一JavaScript代码以及所述第一html代码至所述PC端浏览器;
第二返回单元,用于获取并返回所述第二JavaScript代码以及所述第二html代码至所述移动端浏览器。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,所述计算机指令在被运行时,执行如权利要求1-4中任一权项所述的方法。
10.一种电子设备,其特征在于,包括:处理器,计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,所述计算机指令在被所述处理器读取并被运行时,执行如权利要求1-4中任一权项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710917490.5A CN107748658B (zh) | 2017-09-30 | 2017-09-30 | 一种软件开发方法、系统、计算机可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710917490.5A CN107748658B (zh) | 2017-09-30 | 2017-09-30 | 一种软件开发方法、系统、计算机可读存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107748658A CN107748658A (zh) | 2018-03-02 |
CN107748658B true CN107748658B (zh) | 2020-05-15 |
Family
ID=61255461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710917490.5A Active CN107748658B (zh) | 2017-09-30 | 2017-09-30 | 一种软件开发方法、系统、计算机可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107748658B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109636504B (zh) * | 2018-11-07 | 2021-11-05 | 北京慧流科技有限公司 | 信息处理方法及装置、电子设备及存储介质 |
CN110851346B (zh) * | 2019-09-24 | 2024-05-31 | 平安科技(深圳)有限公司 | 查询语句边界问题的检测方法、装置、设备及存储介质 |
CN112947984B (zh) * | 2020-09-29 | 2024-05-14 | 深圳市明源云科技有限公司 | 应用程序开发方法及装置 |
CN113342353B (zh) * | 2021-07-01 | 2023-05-23 | 银联商务股份有限公司 | 一种mock数据生成方法和装置 |
CN117056175B (zh) * | 2023-10-13 | 2024-02-23 | 美云智数科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192143A (zh) * | 2006-12-01 | 2008-06-04 | 上海亚伦科技有限公司 | 一种软件界面的构造方法 |
CN106503464A (zh) * | 2016-11-03 | 2017-03-15 | 南通大学附属医院 | 胰岛素注射规范化管理系统 |
CN106557820A (zh) * | 2016-11-24 | 2017-04-05 | 天津市普迅电力信息技术有限公司 | 一种变电运维标准作业移动端平台 |
-
2017
- 2017-09-30 CN CN201710917490.5A patent/CN107748658B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192143A (zh) * | 2006-12-01 | 2008-06-04 | 上海亚伦科技有限公司 | 一种软件界面的构造方法 |
CN106503464A (zh) * | 2016-11-03 | 2017-03-15 | 南通大学附属医院 | 胰岛素注射规范化管理系统 |
CN106557820A (zh) * | 2016-11-24 | 2017-04-05 | 天津市普迅电力信息技术有限公司 | 一种变电运维标准作业移动端平台 |
Non-Patent Citations (1)
Title |
---|
煤矿安全管理信息系统的研究与设;刘思;《中国优秀硕士论文全文数据库信息科技辑》;20160615(第6期);第8-12页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107748658A (zh) | 2018-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107748658B (zh) | 一种软件开发方法、系统、计算机可读存储介质及电子设备 | |
US10325009B2 (en) | Method and apparatus for using custom component parsing engine to parse tag of custom component | |
CN100447743C (zh) | 在无需修改源代码的情况下本地化java gui应用的系统和方法 | |
US9465726B2 (en) | Abstract layer for automatic user interface testing | |
JP4420968B2 (ja) | コマンディングのために方法及びコンピュータ可読媒体 | |
AU2016265680B2 (en) | Techniques for configuring a generic program using controls | |
CN105354013A (zh) | 应用界面渲染方法及装置 | |
CN105354014A (zh) | 应用界面渲染展示方法及装置 | |
US9038019B2 (en) | Paige control for enterprise mobile applications | |
CN111813385B (zh) | 一种基于Web应用的页面插件化方法、装置及设备 | |
CN110765746B (zh) | 基于事件代理的表单自动生成方法和系统 | |
CN111538659A (zh) | 业务场景的接口测试方法、系统、电子设备和存储介质 | |
CN111090431A (zh) | 一种数据处理方法及装置 | |
CN109189692A (zh) | 一种webservice接口测试方法及装置 | |
Bellucci et al. | Automatic reverse engineering of interactive dynamic web applications to support adaptation across platforms | |
US9064240B2 (en) | Application based on node types associated with implicit backtracking | |
CN113590123A (zh) | Wpf界面切换方法、装置、计算机设备及存储介质 | |
CN113434063B (zh) | 一种信息显示方法、装置及设备 | |
CN113568608A (zh) | 一种组件信息的展示方法、装置、设备及存储介质 | |
CN114371848A (zh) | 页面联调方法、装置、设备及存储介质 | |
CN113377752A (zh) | 数据的清洗方法、装置、系统及计算机可读存储介质 | |
CN103049249A (zh) | 快捷程序的生成方法、使用方法及生成装置、使用装置 | |
CN115525305A (zh) | 数据处理、应用启动方法、装置、计算机设备和存储介质 | |
CN111563224A (zh) | 一种站点自定义的方法、系统及相关装置 | |
CN111488504B (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 |