一种面向对象的软件开发系统的制作方法

文档序号:16529248发布日期:2019-01-05 10:36阅读:193来源:国知局
技术简介:
本专利针对传统软件开发系统领域狭窄、协调成本高、入门门槛高等问题,提出一种面向对象的开发系统。通过组件模块与函数模块分离界面搭建与代码编写,结合λ表达式编程,实现代码简洁化与开发效率提升,降低非专业人员使用门槛,拓展系统应用广度。
关键词:面向对象开发系统,λ表达式编程

本发明涉及计算机软件开发技术领域,具体地,涉及一种面向对象的软件开发系统。



背景技术:

随着科技和社会的快速发展,计算机软件工程变得越来越重要,各行各业中的机械自动化、智能化控制、互联网、物联网等等对于软件开发的效率、控制或运行速度等要求也越来越多。软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。

目前的软件开发系统,开发的领域和产品细分狭窄,准入门槛高,入手难度高,一般需要专业人士才能进行开发,且无法面向所有对象。

软件工程应用中,传统的软件开发系统只能解决某一个特定对象类型的应用问题,当需要面对多个不同类型的对象时,则需要程序员完成大量复杂、重复或类似的编程开发工作,这一方面带来大量的人工成本的浪费,另一方面程序的代码量激增,数据处理量大,虽然最终能实现软件的技术目的,但在运行中则可能带来控制对象或程序运行速度过慢等问题,而且因为需要大量的编程工作,所以软件开发的效率也无法提高。

经过检索发现:

1、申请号为201710297496.7的中国发明专利申请《一种软件开发方法及系统》,公开了一种软件开发方法及系统,涉及软件开发领域。该申请能够在软件开发时减少人力成本,降低软件的耦合度。但是,该软件开发系统以“层”为概念,将软件开发系统分为不同的层,无法以面向对象的方式对软件进行业务逻辑梳理。

2、申请号为201710205574.6的中国发明专利申请《一种软件开发方法及软件开发系统》,公开了一种软件开发方法及软件开发系统,所述开发方法包括如下步骤:将预先开发的微型服务集成到微型服务器;获取用户在软件开发过程中通过用户终端发送的微型服务请求指令;对所述微型服务请求指令进行响应,以利用所述微型服务器,向所述用户终端提供与所述微型服务请求指令对应的微型服务。但是该软件开发系统面对的开发对象主要是微服务器,不适用于面对所有对象的情况。

3、《visualbasic6.0用户编程手册》,公开了一种visualbasic编程工具,该工具使用微软的vb进行编程开发,具有局限性。

综上所述,现有的软件开发系统仍然存在如下问题:

1、软件开发系统应用的领域狭窄;

2、软件开发系统的协调成本高;

3、软件开发系统的协调难度大;

4、软件开发系统应用的编程的语言需要进行较长时间的训练。

因此,采用传统的快速应用编程工具已经不能满足工业应用的需求。如何提高软件开发系统的协调效率、如何拓展软件开发系统的开发领域和开发广度、如何降低软件开发系统的入门难度以及如何提高软件开发的效率,成为本领域亟待解决的问题。

目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。



技术实现要素:

针对现有技术中存在的上述不足,本发明的目的是提供一种面向对象的软件开发系统,该系统能够面对所有的对象,并能解决上述技术问题。

本发明是通过以下技术方案实现的。

一种面向对象的软件开发系统,包括开发工具以及用于支持开发工具的存储器和处理器;其中,所述开发工具用于完成程序编辑工作,形成可运行的程序代码,并存储于存储器中;所述处理器用于执行所述程序代码;

所述开发工具包括:

-组件模块,所述组件模块提供搭建软件界面的组件,所述组件为函数模块调用的对象;

-函数模块,所述函数模块提供调用对象所需的函数,所述函数用于对所述组件进行事件的编写;

-编辑模块,所述编辑模块对所述组件进行事件代码编辑以及属性设置,形成可运行的程序代码;

所述组件模块和所述函数模块使软件界面的搭建和动作代码的编写实现分离。

优选地,所述组件模块包括基本组件单元、通用组件单元以及高级组件单元;其中:

所述基本组件单元提供搭建基本软件界面所需的基础组件;

所述通用组件单元提供搭建基本软件界面所需的通用组件;

所述高级组件单元提供搭建基本软件界面所需的高级组件。

优选地,所述函数模块包括如下任意一个或任意多个函数单元:

-系统函数单元,所述系统该函数单元用于提供与系统相关的函数操作和函数说明;

-ui函数单元,所述ui函数单元用于提供与ui相关的函数操作和函数说明;

-逻辑函数单元,所述逻辑函数单元用于提供与逻辑相关的函数操作和函数说明;

-对象函数单元,所述对象函数单元用于提供与对象相关的函数操作和函数说明;

-数据函数单元,所述数据函数单元用于提供与数据相关的函数操作和函数说明;

-字符函数单元,所述字符函数单元用于提供与字符相关的函数操作和函数说明;

-文件函数单元,所述文件函数单元用于提供与文件流相关的函数操作和函数说明。

优选地,所述函数模块提供的函数是基于方向的函数。所述基于方向的函数区别于面向过程和面向对象的函数编程方法,是对一种统一动作的编程方式,即实现相同目标。

优选地,所述编辑模块包括如下单元:

-属性编辑单元,对组件进行属性编辑;

-代码编辑单元,对组件进行代码编辑。

优选地,所述代码编辑单元采用λ表达式作为基本编程语言进行代码编辑。

优选地,所述采用λ表达式作为基本编程语言进行代码编辑,具体为:在被调用的位置或作为参数传递给函数的位置定义匿名函数对象。

本发明通过组件模块和函数模块使软件界面的搭建和动作代码的编写实现分离,解决了现有软件开发系统应用的领域狭窄的技术问题;

本发明通过各模块之间的协作开发,解决了现有件开发系统的协调成本高的技术问题以及现有软件开发系统的协调难度大的技术问题;

本发明采用λ表达式作为基本编程语言进行代码编辑,解决了现有软件开发系统应用的编程的语言需要进行较长时间的训练。

与现有技术相比,本发明具有如下有益效果:

本发明提供的软件开发系统可以面对所有的对象,以面向对象的方式对软件进行业务逻辑梳理,不局限于微服务器;

本发明提供的软件开发系统使得软件开发准入门槛降低,初级编程人员或者没有编程基础的人员都能快速进行开发;

通过本发明提供的软件开发系统,可以方便地进行前台、中台和后台的开发,其代码简洁易懂,方便后来的开发人员进行项目的接手和持续开发。

以上有益效果表明,本发明提高了软件开发系统的协调效率,拓展了软件开发系统的开发领域和开发广度,降低了软件开发系统的入门难度,提高了软件开发的效率,能够更好地满足现有工业应用中对于软件开发的需求;当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明一实施例中系统模块示意图;

图2为本发明一实施例中组件模块组成示意图;

图3为本发明一实施例中函数模块组成示意图;

图4为本发明一实施例中编辑模块组成示意图。

具体实施方式

下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

如图1所示,一种面向对象的软件开发系统的一实施例示意图,包括开发工具,还包括用于支持开发工具的存储器和处理器;其中,所述开发工具用于完成程序编辑工作,形成可运行的程序代码,并存储于存储器中;所述处理器用于执行所述程序代码;

所述开发工具包括:

-组件模块,所述组件模块提供搭建软件界面的组件,所述组件为函数模块调用的对象;

-函数模块,所述函数模块提供调用对象所需的函数,所述函数用于对所述组件进行事件的编写;

-编辑模块,所述编辑模块对所述组件进行事件代码编辑以及属性设置,形成可运行的程序代码;

所述组件模块和所述函数模块使软件界面的搭建和动作代码的编写实现分离。

参照图2所示,在部分实施例中,所述组件模块包括基本组件单元、通用组件单元以及高级组件单元;其中:

所述基本组件单元提供搭建基本软件界面所需的基础组件;

所述通用组件单元提供搭建基本软件界面所需的通用组件;

所述高级组件单元提供搭建基本软件界面所需的高级组件。

进一步地,所述基本组件包括如下任意一个或任意多个组件:

-layer层组件,用于构建layer层;

-label组件,用于构建标签;

-textbox组件,用于构建文本框;

-image组件,用于构建image图像;

-gif组件,用于构建gif动图;

-apng组件,用于构建apng图像;

-commandbutton组件,用于构建按钮;

-var组件,用于构建代码中的变量。

进一步地,所述通用组件包括如下任意一个或任意多个组件:

-menu组件,用于构建菜单栏;

-combobox组件,用于构建下拉框;

-listbox组件,用于构建列表框;

-checkbox组件,用于构建复选框;

-optionbutton组件,用于构建单点选择框;

-datebox组件,用于构建日期选择组件;

-timebox组件,用于构建时间组件;

-progrebar组件,用于构建进度条;

-timer组件,用于构建触发时钟。

进一步地,所述高级组件包括如下任意一个或任意多个组件:

-chart组件,用于构建图表框;

-flash组件,用于构建flash;

-report组件,用于构建报表组件;

-tree组件,用于构建树组件;

-webbrowser组件,用于构建浏览器组件。

如图3所示,在部分实施例中,所述函数模块包括如下任意一个或任意多个函数单元:

-系统函数单元,提供与系统相关的函数操作和函数说明,系统函数包括:colorbrowse(调色板),clipboard(粘贴复制板),exit(退出)等;

-ui函数单元,提供与ui相关的函数操作和函数说明,ui函数包括:hidebutton(隐藏按钮),hidecontrol(隐藏组件),hidelayer(隐藏层)等;

-逻辑函数单元,提供与逻辑相关的函数操作和函数说明,逻辑函数包括:for(循环逻辑),if(判断逻辑),case(选择逻辑)等;

-对象函数单元,提供与对象相关的函数操作和函数说明,对象函数包括:append(添加),clear(清除),clone(克隆)等;

-数据函数单元,提供与数据相关的函数操作和函数说明,数据函数包括:bindingdatato(绑定数据),count(计数),db(数据库函数)等;

-字符函数单元,提供与字符相关的函数操作和函数说明,字符函数包括:decode(解码),encode(编码),replace(替换)等;

-文件函数单元,提供与文件流相关的函数操作和函数说明,文件函数包括:filebrowse(文件浏览),filedelete(文件删除),filewrite(写入文件)等。

进一步地,所述函数模块提供的函数是基于方向的函数。

如图4所示,在部分实施例中,所述编辑模块包括如下单元:

-属性编辑单元,对组件进行属性编辑;

-代码编辑单元,对组件进行代码编辑。

进一步地,所述代码编辑单元采用λ表达式作为基本编程语言进行代码编辑。

进一步地,所述采用λ表达式作为基本编程语言进行代码编辑,具体为:在被调用的位置或作为参数传递给函数的位置定义匿名函数对象。

下面结合附图及具体实例对本实施例方案进行进一步的详细说明。

1、通过组件模块搭建基本的软件界面

搭建基本的软件界面,需要从组件模块中选择对应的组件进行搭建,首先是搭建layer层,拖动layer组件到设计窗口中。然后是选择基础、通用或者高级组件到layer容器中,从而形成基本的软件界面。

2、通过函数模块、编辑模块为组件编写事件程序

在搭建好的软件界面上,编写事件程序。双击组件的id进入代码编辑单元,在软件开发函数模块中选择需要的函数对组件进行事件的编写,在属性编辑单元中可以对组件的属性进行相应的设置。

3、通过运行模块执行代码

当编辑好代码后,保存代码,然后通过动作组件即能在线运行代码。同时,关闭ide(集成开发环境)后,在runtime模式下也能运行保存的软件代码。

应用实例说明:搭建helloworld程序

1)利用控件模块选取一个button和一个textbox拖拽到layer上;

2)然后双击button,进入编辑器中编写代码;

3)在函数中选取set函数,并填入textbox的属性;

代码:

set:textboxid.text=‘helloworld’

4)保存代码,运行解释器,软件运行,点击button,textbox显示‘helloworld’。

本发明上述实施例提供的面向对象的软件开发系统,以面向对象的方式对软件进行业务逻辑梳理,架构的梳理方式不同;软件开发系统可以面对所有的对象,准入门槛降低,初级编程人员或者没有编程基础的人员都能快速进行开发,降低人工成本,提高了软件开发的效率。

附图中的框图显示了根据本发明的较优实施例的方法功能和操作。在这点上,框图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图中的每个方框、以及方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!