前些天大雄无意间听见
几个线下班小伙伴说
真的是无(te)意(di)的
“我要补英文”
“对,英文真的很重要”
“如果编码用中文就好了”
...
听见这大雄就不淡定了
中文代码
小伙伴确定能够搞懂??
首先我们大概的看一下中文编码:
你以为会写中文
写编程就简单了吗?
这就像你以为会写汉字
就会写出好文章一样
编程是和机器沟通
因此要用机器的语言而不是人类的语言
最早的程序就是0和1的数字
不是中文也不是英文
以前的程序员
每天写程序就是
在一条长长的纸带上打孔表示0和1
后来发现0和1的二进制太麻烦了
就把0和1压缩一下
用16进制表示
比如数字10
用二进制表示是1010
用16进制表示就是0A
这样表达起来就更简洁
但是输入电脑后
仍然要转换为二进制电脑才能明白
后来
科学家们用简单的英文单词
表示某些功能
比如加法
就用add表示
减法就用dec表示
程序员输入add或dec后
系统会转换为对应的算法
就这样不断的
给不同的代码段起名字
编程语言就是
从数字编码不断压缩提高层次
最后形成了当今的各种风格的编程语言
为什么码农会讨厌中文编程?
用最流行的易语言说明
所谓全中文的易语言
就是把Visual Basic语言中
每个英文单词
换成了对应的中文词
其他都不变
比如Visual Basic的代码是这样:
if True thenPrint "OK" endif
换成了易言语,就是这样了:
如果 真 那么打印 "OK" 结束如果
任何人都能看出来
英文写的程序更简单清晰
从语言学的角度来说
英文是线性的一维语言
中文是平面的二维语言
而程序恰恰是线性的一维的
也就是说
线性的英文正好能契合线性的程序
所以
中文并不适合现有的编程方式
未来的发展可能超出你的想象
未来可能会有多维度的量子计算
也许二维的中文
会比一维的英文更适合
程序员对比
中文编程和英文编程就会明白
中文编程反而会提高门槛
因为编程的核心
不是什么语言
而是程序化思维方式
最简单的并不是英文编程
而是数学符号编程
极度抽象
普通人很难理解
但代码量特别少
补充一句
其实现代的语言比如Java
都支持Unicode
也就是说可以用中文
甚至世界其他语言做变量名和函数名
小伙伴可以试试看
这样看起来就基本上就相当于是中文编程了
对比一下英文编程
就会知道哪个更好了
电脑能识别的只是0和1的二进制而已
如果按中文的角度来考虑
那么应该从核心开始
把二进制转换为8进制
然后用八卦来表示
这样从底层构造纯中文的计算机
八卦两两组合
演化为64卦
就能表达宇宙万物
这比外国人的英文编程语言
不知道高级多少倍
而且满眼全是中文
外国人就算认识中文字
也看不懂意思
哈哈
以后如果中文编程火了
请记得
在某个夜晚
你和某只雄的深夜畅谈。
需要更多学习笔记干货的小伙伴、欢迎关注公众号【老九学堂】(づ ̄3 ̄)づ╭❤~