作者:灵魂教授(AllenDale)
中文编程,首先要确定一个观点,中文不同于英文,从语法结构到各种意思的解释都是独立的,两者之间不能直接用“翻译”这个单一交集去概括。
![2e5f39b8d8d01ff9b79a428f066f447e.png](https://i-blog.csdnimg.cn/blog_migrate/3e66fe5f6cbf652e7d5fe9b8e972108d.jpeg)
Visual Basic 6.0 包装盒(素材来源于网络)
例如basic下的这段代码:
dim a%,b%,c%,i%,j%
for i=1 to 9
for j=1 to 9
a=i * j
b=b & " " & a
next j
c=c & vblf & b
next i
根据很多所谓中文编程的翻译,可将这段basic的代码翻译成这样:
声明 变量1为整型,变量2为整型,变量3为整型,变量4为整型,变量5为整型
循环 变量4 等于 1 到 9
循环 变量5 等于 1 到 9
变量1 等于 变量4 乘 变量5
变量2 等于 变量 2 加 字符:“ ”加 变量1
返回循环 变量4
变量3 等于 变量3 加 换行 加变量2
返回循环 变量5
显然这样翻译出来的不仅不方便阅读,而且格式略显凌乱。
因此中文编程并不能把英文代码框架与逻辑结果套用与中文,更不能直接翻译。
中文编程要想真正实现高效率,很适合中国人的思维逻辑及用语习惯是最重要的。中文编程最基本,也是最棘手的问题是如何改变编程思维与代码结构关系。
“易语言”这款中文编程软件提出了一个比较简单的逻辑思维框架,这就是表格框架,但该框架仅仅是改变了部分代码的基本结构。大部分代码结构仍然是类似于C语言一样,逻辑思维完全没变。因此“易语言”看上去和把英文代码直接翻译出来没有太多区别。
中文编程,最起码要提现出中文在编程中的特点与优势,而不是翻译这么简单。
我个人认为,中文编程可以结合表格制成各种功能代码库、对象、模块、控件等;数值之间使用可视化图形图像连接及数据传递;代码部分需要独立定义一套符合中文基本语法结构的编程语言;程序中的变量不在单独定义,而是在与触发事件相关的可视化图形图像模块中,使用数据连接线定义。
同时中文编程不能完全依赖与可视化图形上,因为如涉及很多复杂条件、功能、环境等编程时,专门制定一套自定义纯代码编程标准模块,该模块在可视化图像中只显示为一个自定义标准模块。
自定义标准模块不能直接编程使用,需要加入规则模块后才能使用,因此可预制一个标准规则模板,方便开发者直接使用或自定义私有规则,自定义规则允许加入非中文编程的对象组件,也就是支持第三方语言插件及模块,甚至可以直接使用第三方语言作为规则编辑自定义模块。
整个中文编程代码中,所有的程序在执行时都需要充分利用库,对象,模块等结构,代码中文代码只能写入到库,对象,模块等结构中,无法单独用于执行,中文代码可直接执行的仅限于含有参数的调用命令或含有代码的调用模块等等。普通的模块,代码库,对象等都需要调用指令或调用模块调用后才能执行。同时只有调用指令及模块允许直接编译执行,且调用指令或模块自带编译其他代码的功能,其他代码都需要调用指令对此完成编译后才能执行,除了第三方语言代码需要开发相关编译插件,单独编译执行。
例如刚才的那段basic代码,如要实现真正的中文编程,可写成这样:
执行代码:
调用 “我的代码” 代码库
代码库代码:
代码库名称:“我的代码”
代码库数值类型:结果1为整型,记录1为字符
代码库过程:
1、使用循环模块,循环1,循环2
2、循环1和循环2计算模块定义从1到9结束
3、循环2套入循环1里面执行
4、在循环2里计算:循环1数值*循环2数值,结果分别空格隔开存储,记“结果1”
5、在循环1里记录:结果1,每个结果占用1行,记“记录1”
当然,不得不承认,我的想法和通过该想法写出的这个中文代码还是有点繁琐,因此开发中文编程语言难度系数还是非常大的。
但是通过理论概述可以确定,中文是可以作为编程语言的,因为编程的过程就是将一些待处理的数据用某种符号作为标注的方式进行存储,并设置成具有一定规则来进行运算处理的过程。
(以上内容均属于个人观点,与专业性理论依据无关 仅供参考)
如果读者对此存在新的观点与建议,欢迎大家尽情评论自己的观点与意见。