在辅助编程时使用的方法和设备的制作方法

文档序号:6442094阅读:219来源:国知局
专利名称:在辅助编程时使用的方法和设备的制作方法
技术领域
本发明的实施方式涉及编程领域,更具体地,本发明的实施方式涉及在辅助编程时使用的方法和设备。
背景技术
目前,程序员在编写程序代码时,通常需要在掌握某种编程语言之后,手工录入各种程序代码以及相应的格式信息(诸如,括号)。

发明内容
在本上下文中,本发明的实施方式期望提供一种在辅助编程时使用的方法,包括:接收与程序代码有关的语音输入;识别所述语音输入以获得内容与之对应的文本输入;以及基于所述文本输入获取程序代码,以作为针对程序的代码输入。此外,本发明的实施方式还期望提供一种在辅助编程时使用的设备,包括:接收装置,配置用于接收与程序代码有关的语音输入;识别装置,配置用于识别所述语音输入以获得内容与之对应的文本输入;以及获取装置,配置用于基于所述文本输入获取程序代码,以作为针对程序的代码输入。利用根据本发明实施方式的在辅助编程时使用的方法和设备,可以减小手工输入代码所需的工作量,帮助一些不方便的残障人士,从而显著地提高编程效率,为编程人员带来了更好的体验。


通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:图1示意性地示出了根据本发明一个实施方式的在辅助编程时使用的方法;图2示意性地示出了根据本发明一个实施方式的在辅助编程时使用的设备;以及图3示意性地示出了可以实现根据本发明的实施方式的计算设备的结构框图。在附图中,相同或对应的标号表不相同或对应的部分。
具体实施例方式下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。根据本发明的实施方式,提出了一种在辅助编程时使用的方法和设备。在本文中,需要理解的是,所涉及的术语“接收”包括通过任何有线或无线方式接收。术语“识别”可以涉及任何现有的或日后开发的将语音识别为文字的技术。术语“提供”可以涉及以任何可视化呈现。此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。发明概沭本发明人发现,程序员在编写代码时,常会遇到重复输入的问题。尽管通过提供一些函数库能够尽量减少重复输入操作,但这些函数的名称和参数等也是需要程序员手工输入的。此外,诸如盲人的残障人士在手工编写代码时同样会遇到一定的困难。为此,本发明人设想,如果能够利用一定量的语音输入代码来代替手工代码输入,不仅可以减少程序员的重复输入操作,而且能够方便各种残障人士进行代码编写。在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
_9] 示例性方法下面参考图1来描述根据本发明一个实施方式的在辅助编程时使用的方法100。如图1所示,方法100例如可以包括接收与程序代码有关的语音输入(步骤S101)。根据本发明的某些实施方式,与程序代码有关的语音输入是针对程序语句的语音输入。举例而言,程序员提供的语音输入为“return sum(返回“和”)”。根据本发明的某些实施方式,与程序代码有关的语音输入是针对程序逻辑的语音输入。具体地,程序逻辑例如可以涉及关键字或函数功能。举例而言,程序员提供的语音输入“如果a等于b”例如可以涉及C语言中的关键字IF。或者,程序员提供的语音输入“对a和b求和”例如可以涉及程序员定义的函数功能(sum(a,b))。本领域技术人员可以理解,上述语音输入仅是示例,程序员可以提供与程序代码有关的任何语音输入,本发明在此方面不受限制。继续参考图1,图1例如可以进一步包括识别该语音输入以获得内容与之对应的文本输入(步骤S103)。应当理解,能够将语音识别为文本的任何现有或日后开发的技术都可以用于本发明,本发明在此方面不受限制。以上述语音输入为例,在识别这些语音输入之后获得的内容与语音输入对应的文本输入分别为,return sum”、“如果a等于b”,以及“对a和b求和”。本领域技术人员仍可理解,这些识别出的文本输入仅是示例,本发明在此方面不受限制。如图1所示,图1例如还可以包括基于该文本输入获取程序代码,以作为针对程序的代码输入(步骤S105)。根据本发明的某些实施方式,基于该文本输入获取程序代码例如可以包括:基于该文本输入与程序代码之间的对应关系来获取程序代码。举例而言,针对上述与程序代码有关的语音输入是针对程序语句的语音输入的情况(即,上例中的语音输入为“return sum”,相应地,识别出的文本输入为“return sum”),对应关系是“文本输入即为程序代码”。由此,获得的程序代码是return sum。再比如,针对上述与程序代码有关的语音输入是涉及关键字的语音输入的情况(即,上例中的语音输入为“如果a等于b”,相应地,识别出的文本输入为“如果a等于b”),本发明的实施方式可以利用预先存储的文本输入与关键字之间的对应关系(即,“如果”对应于“ IF”,“等于”对应于“=”)来获取程序代码,即,IF (a = b)。又例如,针对上述与程序代码有关的语音输入是涉及函数功能的语音输入的情况(即,上例中的语音输入为“对a和b求和”,相应地,识别出的文本输入为“对a和b求和”),本发明的实施方式可以利用预先存储的文本输入与函数功能之间的对应关系(即,“求和”对应于“sum”函数,以及参数a和b对应于sum函数的参数)来获取程序代码,即sum(a,b)。本领域技术人员可以理解,上述文本输入与程序代码之间的对应关系仅是示例,程序员可以提供二者之间的任何对应关系,本发明在此方面不受限制。此外,本领域技术人员可以理解,利用文本输入与程序代码之间的对应关系来获取程序代码仅是获取程序代码的一种示例性但非限制性方式。利用文本输入与程序代码之间特定关系的任何方法都可以用于本发明。进一步地,根据本发明的某些实施方式,在辅助编程时使用的方法100例如可以可选地包括接收与程序语言种类有关的语音输入,以及识别该语音输入以获得程序语言种类。本领域技术人员可以理解,可以预先存储默认的程序语言种类,由此获取属于该默认的程序语言种类的程序代码。本领域技术人员还可以理解,也可以不预先存储默认的程序语言种类。在这种情况下,程序员可以利用语音输入选择程序语言种类,并且编程用的机器可以在识别该语音输入之后获得该程序员所需的语言种类。此时,步骤S105中包括的、基于文本输入获取程序代码例如可以包括基于与程序代码有关的文本输入获取依照该程序语言种类的程序代码。本领域技术人员可以理解,这依赖于编程用的机器可以访问文本输入与各种程序语言代码之间的对应关系。可以理解,所述默认的程序语言种类和对应关系可以利用各种存储形式(例如,表格)存储在编程用的机器的存储器或存储设备中,和/或编程用的机器可以访问的远程存储器或存储设备中。进一步地,根据本发明的某些实施方式,在辅助编程时使用的方法100例如可以可选地包括基于文本输入、按照程序语言种类生成针对程序代码的格式信息;以及将程序代码与格式信息关联地提供,以作为针对程序的代码输入。本领域技术人员可以理解,上文所述的IF (a = b)的情况既属于这种情况。从上文可知,用户语音输入的是“如果a等于b”,没有提及“括号”。方法100可以自动地针对这一逻辑添加其所需的括号,即,格式信息,由此能够提供更高的方便性。进一步地,根据本发明的某些实施方式,在辅助编程时使用的方法100例如可以可选地包括通过改变、删除和/或增加对应关系来更新对应关系。换言之,程序员可以对文本输入与程序代码之间的对应关系进行各种改变,由此提供更高的灵活性。示例性设备在介绍了本发明示例性实施方式的方法之后,接下来,参考图2对根据本发明一个实施方式的、在辅助编程时使用的设备200进行描述,下文为了方便,将其简称为辅助编程设备200。根据本发明的某些实施方式,辅助编程设备200例如可以包括:接收装置201,配置用于接收与程序代码有关的语音输入;识别装置203,配置用于识别所述语音输入以获得内容与之对应的文本输入;以及获取装置205,配置用于基于所述文本输入获取程序代码,以作为针对程序的代码输入。根据本发明的某些实施方式,获取装置205例如可以包括:用于基于所述文本输入与程序代码之间的对应关系来获取所述程序代码的装置。根据本发明的某些实施方式,与所述程序代码有关的语音输入例如可以是针对程序语句的语音输入。根据本发明的某些实施方式,在与所述程序代码有关的语音输入例如是针对程序语句的语音输入的情况下,对应关系是:所述文本输入即为所述程序代码。根据本发明的某些实施方式,与所述程序代码有关的语音输入例如可以是针对程序逻辑的语音输入。根据本发明的某些实施方式,程序逻辑例如可以涉及关键字或函数功能。根据本发明的某些实施方式,接收装置201进一步配置用于接收与程序语言种类有关的语音输入;识别装置203进一步配置用于识别所述语音输入以获得所述程序语言种类;以及获取装置205进一步配置用于基于所述文本输入获取依照所述程序语言种类的所述程序代码。根据本发明的某些实施方式,辅助编程设备200例如可以进一步包括生成装置207,配置用于基于所述文本输入、按照所述程序语言种类生成针对所述程序代码的格式信息;以及提供装置209,配置用于将所述程序代码与所述格式信息关联地提供,以作为针对所述程序的代码输入。根据本发明的某些实施方式,辅助编程设备200例如可以进一步包括更新装置211,配置用于通过改变、删除和/或增加所述对应关系来更新所述对应关系。示例性计算设备下面,将参考图3来描述可以实现本发明的计算设备。图3示意性示出了可以实现根据本发明的实施方式的计算设备的结构方框图。图3中所示的计算设备包括CPU (中央处理单元)301、RAM(随机存取存储器)302、ROM(只读存储器)303、系统总线304、硬盘控制器305、键盘控制器306、串行接口控制器307、并行接口控制器308、显示器控制器309、硬盘310、键盘311、串行外部设备312、并行外部设备313和显示器314。在这些部件中,与系统总线304相连的有CPU 301、RAM 302、ROM 303、硬盘控制器305、键盘控制器306、串行接口控制器307、并行接口控制器308和显示器控制器309。硬盘310与硬盘控制器305相连,键盘311与键盘控制器306相连,串行外部设备312与串行接口控制器307相连,并行外部设备313与并行接口控制器308相连,以及显示器314与显示器控制器309相连。图3所述的结构方框图仅仅为了示例的目的而示出的,并非是对本发明的限制。在一些情况下,可以根据需要添加或者减少其中的一些设备。本发明的方法和设备的实施方式可以通过能够实现所需功能的硬件、软件或者软件和硬件的结合来实现,而不受任何特定软件或硬件结构的限制。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。应当注意,尽管在上文详细描述中提及了辅助编程设备的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。虽然已经参考若干具体实施方式
描述了本发明,但是应该理解,本发明并不限于所公开的具体实施方式
。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
权利要求
1.一种在辅助编程时使用的方法,包括: 接收与程序代码有关的语音输入; 识别所述语音输入以获得内容与之对应的文本输入;以及 基于所述文本输入获取程序代码,以作为针对程序的代码输入。
2.如权利要求1的方法,其中基于所述文本输入获取程序代码包括:基于所述文本输入与程序代码之间的对应关系来获取所述程序代码。
3.如权利要求2的方法,其中与所述程序代码有关的语音输入是针对程序语句的语音输入。
4.如权利要求3的方法,其中所述对应关系是:所述文本输入即为所述程序代码。
5.如权利要求2的方法,其中与所述程序代码有关的语音输入是针对程序逻辑的语音输入。
6.如权利要求5的方法,其中所述程序逻辑涉及关键字或函数功能。
7.如权利要求1的方法,进一步包括: 接收与程序语言种类有关的语音输入; 识别所述语音输入以获得所述程序语言种类;以及 其中,基于所述文本输入获取程序代码包括:基于所述文本输入获取依照所述程序语言种类的所述程序代码。
8.如权利要求7的方法,进一步包括: 基于所述文本输入、按照所述程序语言种类生成针对所述程序代码的格式信息;以及 将所述程序代码与所述格式信息关联地提供,以作为针对所述程序的代码输入。
9.如权利要求2的方法,进一步包括:通过改变、删除和/或增加所述对应关系来更新所述对应关系。
10.一种在辅助编程时使用的设备,包括: 接收装置,配置用于接收与程序代码有关的语音输入; 识别装置,配置用于识别所述语音输入以获得内容与之对应的文本输入;以及 获取装置,配置用于基于所述文本输入获取程序代码,以作为针对程序的代码输入。
11.如权利要求10的设备,其中所述获取装置包括:用于基于所述文本输入与程序代码之间的对应关系来获取所述程序代码的装置。
12.如权利要求11的设备,其中与所述程序代码有关的语音输入是针对程序语句的语音输入。
13.如权利要求12的设备,其中所述对应关系是:所述文本输入即为所述程序代码。
14.如权利要求11的设备,其中与所述程序代码有关的语音输入是针对程序逻辑的语音输入。
15.如权利要求14的设备,其中所述程序逻辑涉及关键字或函数功能。
16.如权利要求10的设备,其中 所述接收装置进一步配置用于接收与程序语言种类有关的语音输入; 所述识别装置进一步配置用于识别所述语音输入以获得所述程序语言种类;以及所述获取装置进一步配置用于基于所述文本输入获取依照所述程序语言种类的所述程序代码。
17.如权利要求16的设备,进一步包括: 生成装置,配置用于基于所述文本输入、按照所述程序语言种类生成针对所述程序代码的格式信息;以及 提供装置,配置用于将所述程序代码与所述格式信息关联地提供,以作为针对所述程序的代码输入。
18.如权利要求11的设备,进一步包括更新装置,配置用于通过改变、删除和/或增加所述对应关系来更新所述对应关系。
全文摘要
本发明的实施方式提供了一种在辅助编程时使用的方法和设备。其中,该方法例如可以包括接收与程序代码有关的语音输入;识别所述语音输入以获得内容与之对应的文本输入;以及基于所述文本输入获取程序代码,以作为针对程序的代码输入。利用根据本发明实施方式的、在辅助编程时使用的方法和设备,可以减小手工输入代码所需的工作量,帮助一些不方便的残障人士,从而显著地提高编程效率,为编程人员带来了更好的体验。
文档编号G06F3/16GK103164212SQ20111042728
公开日2013年6月19日 申请日期2011年12月14日 优先权日2011年12月14日
发明者史智慧 申请人:北京千橡网景科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1