一种程序间通信再编程软件设计实现及人机交互方法

文档序号:9375382阅读:298来源:国知局
一种程序间通信再编程软件设计实现及人机交互方法
【技术领域】
[0001] 本发明涉及一种程序间通信和再编程计算机软件的设计、实现和所采用的人机交 互方法。尤其涉及以下环节和技术,程序间通信(典型地有Socket通信,但不仅限于此)、 数据的输入与辨识(典型地数据表示,查找,识别等)、数据处理与再编程(典型地可视化代 码生成技术)、数据输出与适配(典型地有数据模式定义与转换)。
【背景技术】
[0002] 数字计算机进入人们的日常工作、生活已经有30多年的时间了,人们和计算机的 沟通和交互方式也经历了同样长或更长时间的变迁,从最初的机器码(或称为机器语言)、 汇编语言到现在普遍使用的高级语言、面向对象程序设计方法。人们的程序设计体验得到 了很大的改善和提高。而随着计算机的易用性的极大改善,各式各样的计算机及应用软件 也更多地进入了人们生活、工作的方方面面。计算机应用的多样化催生了玲琅满目的各式 各样的软件和应用程序,与此同时也带来了一些问题。第一,每个应用程序功能固定,使用 者没有任何机会对某一款应用程序做些许的更适合自己需要的改动;第二,独立的应用程 序之间不能顺畅的互相通信和互相操作,因此用户几乎不能将两个或多个应用程序串联起 来,实现应用功能的组合扩展,内容丰富、灵活又易于个性化的程序设计;第三,应用程序和 程序设计语言之间的差距不是明显地缩小,而是显著的增大。使得大多数各式各样的计算 机使用者很难掌握现有的一种程序设计语言,应自身需求实现应用程序并和自己的计算机 进行更多的、更灵活的交互。正是因为有了上述这些问题,导致绝大多数计算机使用者与系 统的交互是完全依赖于现有的,功能被预先定义的应用程序,人与计算机的交互形式完全 被预先设计好的应用程序所限定,设备可用性、易用性等的进一步提高受到很大限制。阻碍 了各式计算机更好地、灵活地拓展应用,贴近人们生活,丰富其应用领域,提高其可用性能。

【发明内容】

[0003] 本文将重点说明程序间通信再编程软件的设计、实现及人机交互方法。该软件的 使用将提高其系统的可用性、灵活性以及为程序或软件提供应用时运行时功能修改的能 力。增强了人机交互能力。进一步拓展了计算机的普遍可用性。
[0004] 它将主要包括以下内容和特性:
[0005] 0、操作系统的Shell指人机交互的接口或界面。在本发明中指包括单一命令行形 式的但不限于此的可视化 1的人机交互接口或界面。 1可视化,相对于单一的使用文字或字符的呈现方式而言,可视化指综合应用多元呈现手段形成的呈现方式。
[0006] 1、本文正在和将要述及的软件定名为Clipee,其是Shell下的一个应用程序或模 块,可由Shell启动,并可和Shell交互,同时也可以和其它的程序进行交互。
[0007] 2、应用程序可调用相应API将数据等信息传递给Clipee,Clip ee接收数据后根据 关键信息,应用查找等技术确定数据表示形式及适用模式,由Clipee加载相应模块生成计 算机语言代码框架,并可视化的显示在界面中。而在界面中可以方便的显示提示和帮助信 肩、。
[0008] 3、在Clipee提供的可视化界面中,应用系统支持的计算机语言,对输入数据进行 编程和处理。
[0009] 4、在Clipee提供的可视化界面中,收集处理后需要输出的数据,将输出数据表达 为便于后续模块或程序使用的特定形式或定义其模式,然后将其传递给后续模块或程序, 并使后续的模块或程序执行。
[0010] 5、Clipee可以收集一个或多于一个程序或模块的输入数据,当收集多个程序或模 块的输入数据时,在需要时可以起到同步作用。
[0011] 6、在Clipee中编辑完成的内容可以被保存为特定文件,以便之后使用。也可以由 Shell命令而执行。Clipee可以在同一个程序内使用,完善完成相应处理任务;也可以链接 两个或多个程序,完成更为复杂的功能。
[0012] 7、Clipee的行为可以包含以上2至5项所述所有内容,也可以仅包含这些内容的 其中一部分。当只包含输入输出功能时,Clipee的功能退化为默认功能;当包含可编辑内 容时,相应Clipee的内容称为非退化的。
[0013] 本发明的突出特点是为程序或软件提供应用时运行时功能修改的能力,完善了可 视化Shell的功能的同时增强了人机交互能力,提高了各式计算机应用灵活性。其优点是 易于在模块层面上快速编程,实现应用,提高模块的重用率,减小了程序的编写与编辑时对 键盘鼠标等的依赖。
【具体实施方式】
[0014] Clipee主要包括四个方面的技术的应用:程序间通信,输入与辨识,处理与再编 程,输出与适配。以下将就相关方面展开设计和实现。
[0015] 程序间通信
[0016] 一般地,Clipee与其它程序或模块在不同的进程中运行,而Clipee与其它程序、 模块或进程的交互需要通过进程间通信实现。通信可以是单向的(仅输出数据和信息不 需要等待程序返回数据和信息),应答的(输出数据和信息后需要等待程序返回数据和信 息),同步的(包括两个或两个以上输入数据源,当数据全部到达Clipee后,Clipee中的后 续处理才会执行)。
[0017] 输入与辨识
[0018] 输入数据一般为一种或多种简单数据的集合。对于这个数据集合Clipee可采用 顺序结构接收和表示。Clipee将根据关键信息查找并加载相应模块,模块将对数据做进一 步的解析,更多辨识处理,以便后续处理或为编程者提供更友好的编程界面。
[0019] 处理与再编程
[0020] 处理与再编程,指利用系统支持计算机语言对输入数据的处理和编程。由于产生 输入数据的主体本身就是编程实现的,所以这次的处理和编程称为处理与再编程。这一过 程可以选用系统支持的计算机语言和开发环境作为编程工具。
[0021] 输出与适配
[0022] 输出首先包括处理后有用结果数据的收集、组织,除此以外还会通过命令或API 执行后续程序或模块,并将输出数据传递到该程序或模块。
[0023] Clipee是计算机系统中的一个模块或程序。实现时,可以将其作为Shell的一个 模块,在Shell启动时一同启动。或作为一个独立的程序在系统启动时和Shell -起启动。
[0024] 在Shell中提供API供应用程序访问Clipee,同Clipee进行交互。在程序的可视 化界面中提供对Clipee的操作入口,比如工具栏中或设置中的按钮。同时Clipee的可视 化界面中提供相应的操作元素或集合,对这些元素或集合的使用将促成Clipee对输入内 容的处理与再编程,以及对后续模块的访问或命令的执行。
【主权项】
1. 一种程序间通信和再编程计算机软件的设计、实现和所采用的人机交互方法,其特 征在于,该软件是可视化Shell的一部分,是其功能的拓展和增强。它具有这样的功能,① 程序间通信和数据传递;②在通信和传递数据的过程中对数据进行辨识、处理和再编程,从 而实现不同的应用及功能;③输出时相应数据被装配,为后续模块的执行形成适配的数据 形式,并促使后续模块执行。2. 根据权利要求1,其特征还在于,程序可以通过Shell的APl实现对本发明软件进行 同信和交互。当本软件接收到数据后根据关键信息,应用查找等技术确定数据表示形式及 适用模式,加载相应模块生成计算机语言代码框架,并可视化的显示在界面中。进一步的加 载相应的编程提示信息和帮助信息等。3. 根据权利要求1,其特征在于本软件使用系统中支持的编程语言进行再编程。程序 或模块与本软件的交互由接口定义,与使用何种计算机语言无关。4. 根据权利要求1,其特征在于本软件对于处理后的数据可以进行组织或定义模式, 以适配后续模块或程序的数据输入要求,并使后续模块执行。5. 根据权利要求1,其特征在于本软件可以收集一个或多于一个程序或模块的输入数 据,当收集多个程序或模块的输入数据时,在需要时可以起到同步作用,即仅在多个需要同 步的输入数据全部到达后,后续指令才会被执行。6. 根据权利要求1,其特征在于本软件编辑完成的内容可以被保存为特定文件,以便 之后使用。也可以由Shell命令而执行。7. 根据权利要求1,其特征在于本软件可以在同一个程序内使用;也可以在多个程序 或模块间使用,起到链接两个或多个程序或模块的作用,完成更为复杂的功能。8. 根据权利要求1及权利要求2至7,其特征在于本软件的功能和行为可以根据需求 被裁剪。可以包含上述所有功能,也可以仅包含输入输出功能。当仅包含输入输出功能时, 其行为定义为默认行为。9. 根据权利要求1、3,其特征在于,为程序、模块或软件提供应用时运行时功能修改的 能力。10. 根据权利要求1、3,其特征在于,在Shell中提供API供应用程序与本软件进行交 互。在程序的可视化界面中提供对本软件的操作入口。同时本软件的可视化界面中提供 相应的操作元素或集合,对这些元素或集合的使用将促成本软件对输入内容的处理与再编 程,以及对后续模块的访问或命令的执行。
【专利摘要】本发明涉及一种程序间通信和再编程计算机软件的设计、实现和所采用的人机交互方法。尤其涉及以下环节和技术,程序间通信(典型地有Socket通信,但不仅限于此)、数据的输入与辨识(典型地数据表示,查找,识别等)、数据处理与再编程(典型地可视化代码生成技术)、数据输出与适配(典型地有数据模式定义与转换)。本发明的突出特点是为程序或软件提供应用时运行时功能修改的能力,完善了可视化Shell的功能的同时增强了人机交互能力,提高了各式计算机应用灵活性。其优点是易于在模块层面上快速编程,实现应用,提高模块的重用率,减小了程序的编写与编辑时对键盘鼠标的依赖。
【IPC分类】G06F9/44, G06F9/54
【公开号】CN105094994
【申请号】CN201410195745
【发明人】张炯
【申请人】张炯
【公开日】2015年11月25日
【申请日】2014年5月12日
【公告号】WO2015172401A1
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1