图形化编程的实现方法技术

技术编号:35027713 阅读:56 留言:0更新日期:2022-09-24 23:00
本发明专利技术提供一种图形化编程的实现方法,包括步骤:当用户创建新的图形化编程项目时,显示图形素材库中的可选素材;将用户选中的可选素材显示在图形化编程项目的画布中;获取用户对于函数图形所对应的函数内容的定义,根据定义调整函数图形入口节点和出口节点的显示;获取用户对于函数图形出口节点与其他函数图形入口节点之间的连接指令,根据连接指令在两个函数图形之间生成连接线,并生成函数调用的程序逻辑;根据图形化编程项目的程序逻辑生成相应的程序代码文件,本发明专利技术通过图形来表达高级编程语言中的函数定义、程序逻辑、组合函数、多线程的过程,可以完成复杂的软件设计,能提高程序逻辑的可读性,帮助用户快速完成程序框架的搭建。的搭建。的搭建。

【技术实现步骤摘要】
图形化编程的实现方法


[0001]本专利技术涉及图形化编程
,尤其涉及一种图形化编程的实现方法。

技术介绍

[0002]编程即编辑程序让电脑执行的过程,计算机程序是指令集,它能告诉计算机如何执行特殊的任务,对于越是复杂的软件,其背后的计算机程序代码就越是复杂,可读性越差,在编程时会给开发人员的阅读带来相当大的困难,特别是对于二次开发、进行功能扩展且具有一定规模的软件,中途加入的开发人员在理解软件架构、厘清不同函数的调用关系时就需要花费大量的时间,若是能够通过图形化的方式实现编程,将不同函数之间的调用和参数传递通过不同图形进行表示,将有助于提高计算机程序的可读性,帮助开发人员快速了解程序逻辑和架构,提高开发效率。

技术实现思路

[0003]鉴于此,本专利技术的目的在于提供一种图形化编程的实现方法,以克服或至少部分解决现有技术所存在的上述问题。
[0004]为实现上述专利技术目的,本专利技术提供一种图形化编程的实现方法,包括以下步骤:
[0005]S101、当用户创建新的图形化编程项目时,显示图形素材库中的可选素材,所述可选素材包括函数图形和组合函数图形,所述函数图形为组合方框图,所述组合函数图形为包含多个函数图形的流程图;
[0006]S102、将用户选中的可选素材显示在图形化编程项目的画布中;
[0007]S103、获取用户对于函数图形所对应的函数内容的定义,根据定义调整函数图形入口节点和出口节点的显示,入口节点表示函数图形对应的函数的入口,出口节点表示函数图形对应的函数的返回值;
[0008]S104、获取用户对于函数图形出口节点与其他函数图形入口节点之间的连接指令,根据连接指令在两个函数图形之间生成连接线,并生成函数调用的程序逻辑;
[0009]S105、根据图形化编程项目的程序逻辑生成相应的程序代码文件。
[0010]进一步的,所述函数图形的入口节点和出口节点分别位于组合方框图的上下相对两侧。一个函数图形有一个入口节点和零个或多个出口节点,不同的出口表示不同的程序分支。
[0011]进一步的,组合函数图形为包含多个函数图形的流程图,其缩略图为组合方框图,双击组合函数图形可以展开一个新的页面,在新的页面进行包含多个函数图形的流程图的编辑。
[0012]进一步的,组合函数图形可以动态定义组合函数图形的出口节点。在组合函数图形的编辑页面中,从素材库中拖拽出一个出口图形可定义一个组合函数的出口节点,拖拽出多个出口图形,则可定义多个组合函数的出口节点。
[0013]进一步的,图形化编程的实现方法支持多线程编程,通过以下几个步骤实现多线
程编程:
[0014]S201、通过配置文件,定义局部变量和全局变量。局部变量作用域在一个执行线程中生效,全局变量作用域在所有的执行线程中生效。
[0015]S202、通过配置文件,配置程序运行的线程数,每个线程都分别按流程图中的第一个函数开始执行程序,紧接着又根据函数返回出口,继续执行该出口所连接的下个一个函数,如此反复。每个线程可通过系统变量获取线程号,以区别其他线程。
[0016]S203、通过“原子锁函数图形”实现线程安全,在开始执行一段函数过程前进行加锁,结束后解锁。
[0017]S204、通过“启动线程函数图形”实现动态启动新的线程。“启动线程函数图形”的成功出口连线一个组合函数图形,组合函数图形表示新的线程的流程图。双击组合函数图形后,可以在新的页面编辑线程的程序逻辑流程图。
[0018]S205、通过“消息函数图形”,在线程间传递消息。消息存放在自定义的变量中。
[0019]进一步的,图形化编程的实现方法支持引用类型变量。除了字符串、整形、浮点数、布尔等基本类型变量外,还可以定义引用类型变量。通过引用类型变量,可以在图形化编程中使用数组,集合,散列表,乃至自定义类对象,这是编写复杂程序的必备条件。通过以下几个步骤实现复杂变量的编程:
[0020]S301、引用类型变量支持集合类型,通过KEY

VALUE的方式引用多个变量,每个变量可以是不同类型变量。
[0021]S302、引用类型变量支持引用字符串、整形、浮点数、布尔,智能指针,以及引用类型的引用。智能指针可以引用用户自定义结构变量,智能智能还可以动态销毁变量,回收内存。引用类型的引用可以定义多层结构数据类型。
[0022]S303、通过配置文件,定义引用变量。
[0023]S304、用户编写自定义动态函数库SO或DLL函数,或通过提供的函数库编写自定义函数,函数中使用引用变量参数,将用户自定义结构变量回传至流程图中。
[0024]S305、图形化编程的实现方法提供一组系统函数,能够对引用变量在流程图中进行赋值、删除、拷贝等操作。
[0025]进一步的,步骤S105中,在编译图形化编程项目的程序逻辑生成相应的程序代码文件的过程中,判断函数图形出口节点是否符合被连接的函数图形入口节点的语义要求,在不符合要求时,将被连接的函数图形的入口节点调整为第一颜色和/或第一形状;在符合要求时,将被连接的函数图形的入口节点调整为第二颜色和/或第二形状。
[0026]进一步的,在根据图形化编程项目的程序逻辑生成相应的程序代码文件后,对程序代码文件进行加密,所述加密具体包括以下步骤:
[0027]S401、截取图形化编程项目的画布图像,提取画布图像的颜色特征、形状特征和空间特征;
[0028]S402、分别对画布图像的颜色特征、形状特征和空间特征进行杂凑运算,得到相应的三个散列值;
[0029]S403、将三个散列值取整分别作为模运算中的整数,取得相应的余数值;
[0030]S404、将余数值作为输入通过密钥算法生成密钥,基于密钥对程序代码文件进行加密。
[0031]与现有技术相比,本专利技术的有益效果是:
[0032]本专利技术所提供的一种图形化编程的实现方法,用户创建新的图形化编程项目时,从图形素材库中选择合适的可选素材并添加到图形化编程项目的画布中,用户可在画布中对函数图形内容进行定义,并输入不同函数图形之间的连接指令,从而生成函数调用的程序逻辑,完成整个项目的程序逻辑设置后即可生成并输出相应的程序代码文件,本方法通过图形来表达高级编程语言中的函数定义、程序逻辑、组合函数、复杂结构体变量定义,多线程编程,可以完成复杂的软件设计,能提高程序逻辑的可读性,快速完成程序框架的搭建。
附图说明
[0033]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的优选实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034]图1是本专利技术一实施例提供的一种图形化编程的实现方法整体流程示意图。
[0035]图2是本专利技术一实施例提供的函数图形示意图。
[0036本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图形化编程的实现方法,其特征在于,所述方法包括以下步骤:S101、当用户创建新的图形化编程项目时,显示图形素材库中的可选素材,所述可选素材包括函数图形和组合函数图形,所述函数图形为组合方框图,所述组合函数图形为包含多个函数图形的流程图;S102、将用户选中的可选素材显示在图形化编程项目的画布中;S103、获取用户对于函数图形所对应的函数内容的定义,根据定义调整函数图形入口节点和出口节点的显示,入口节点表示函数图形对应的函数的入口,出口节点表示函数图形对应的函数的执行返回后的程序分支;S104、获取用户对于函数图形出口节点与其他函数图形入口节点之间的连接指令,根据连接指令在两个函数图形入口和出口之间生成连接线,并生成函数调用的程序逻辑;S105、根据图形化编程项目的程序逻辑生成相应的程序代码文件。2.根据权利要求1所述的一种图形化编程的实现方法,其特征在于,所述函数图形的入口节点和出口节点分别位于组合方框图的上下相对两侧,一个函数图形有一个入口节点和不限数量的出口节点,不同的出口表示不同的程序分支。3.根据权利要求1所述的一种图形化编程的实现方法,其特征在于,组合函数图形为包含多个函数图形的流程图,其缩略图为组合方框图,双击组合函数图形可以展开一个新的页面,在新的页面进行包含多个函数图形的流程图的编辑。4.根据权利要求1所述的一种图形化编程的实现方法,其特征在于,组合函数图形用于动态定义组合函数图形的出口节点,在组合函数图形的编辑页面中,从素材库中拖拽出一个出口图形可定义一个组合函数的出口节点,拖拽出多个出口图形,则可定义多个组合函数的出口节点。5.根据权利要求1所述的一种图形化编程的实现方法,其特征在于,支持多线程编程,通过以下几个步骤实现多线程编程:S201、通过配置文件,定义局部变量和全局变量,局部变量作用域在一个执行线程中生效,全局变量作用域在所有的执行线程中生效;S202、通过配置文件,配置程序运行的线程数,每个线程都分别按流程图中的第一个函数开始执行程序,紧接着又根据函数返回出口,继续执行该出口所连接的下个一个函数,如此反复,每个线程可通过系统变量获取线程号,以区别其他线程;S203、通过“原子锁函数图形”实现线程安全,在开始执行一段函数过程前进行加锁,结束后解锁;S204、通过“启动线程函数图形”实现动...

【专利技术属性】
技术研发人员:方海波
申请(专利权)人:海南电信规划设计院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1