代码中不能出现中文?现代编程语言不支持中文等于故步自封!
现在还有程序员要求写代码的时候不能出现中文,比如说“文件路径中不能包含中文”这样的要求。所谓文件路径中不能包含中文,其实是编程语言的历史问题,很多古早的编程语言或者IDE使用的是ASCII编码或者是ISO8859编码,或者是操作系统对于中文编码支持得不是太好导致的。或许,人家在发明某个编程语言、IDE、操作系统的时候,就没想到带别人玩。
中文编程的小例子
现在不光是中文编程,不支持中文的本质是其实是不支持除英文和阿拉伯数字以外的其他文字,但很多其他国家的程序员也会使用不同的语言来编程,因此,以前不支持可以说得过去,但是现在不支持就有点故步自封了!
现在大部分编程语言、IDE、操作系统的编码都是采用utf-8或者unicode作为编码格式,因此可以大胆用中文,放心用中文,不会出现任何问题!
如果说,中文不允许出现在软件路径当中,如果问题无法解决的话,我宁愿放弃这门编程语言或者IDE,因为软件的使用者他不会考虑这些,总不能下载个软件还要看说明书吧?另外,对文字进行限制,会增加程序的不确定性,因为软件的目录不一定是恒定的。而且,作为用户,即使你明确告诉他,软件的下载目录不能使用中文,他也会视而不见,因此,使用中文作为软件目录如果不被允许的话,在用户体验上软件给人的第一印象已经很失败了!
因此,如果我所掌握的编程语言以及IDE不支持中文编程,或者使用中文编程会出现意想不到的问题的话,也就是我们常说的不确定性,如果问题无法解决的话,那么我宁愿舍弃这门编程语言或者IDE。
现代编程语言必须支持各种文字的编程,这是大势所趋,尤其是编译型编程语言,不支持中文解释不过去!目前一些对中文编程兼容得比较好的编程语言有CSharp、VisualBase等等,基本上使用中文编程不会出现太大的问题。
解释型编程语言不支持中文其实都很好解释,因为毕竟是解释型编程语言,因为解释型语言是通过解释器来翻译代码,受制于容器,比如说HTML、CSS、JavaScript。但是,其实想做到支持中文,也不是不可以!
但是,编译型编程语言跟解释型编程语言不同的是,编译型编程语言会先将代码转换成机器码,然后再去执行。也就是说,只要你的电脑上能显示中文,其实在机器眼里,其实都是一样的!因此,编译型编程语言不支持中文,其实是说不过去的!
我认识一位写VisualBase的程序员,他几乎给公司写的所有代码,除了一些编程语言的关键字外,所有变量、方法、类等都使用的是中文,代码跑起来没有任何问题。
但是,就像有人说的,中文编程在很多公司里面是不允许的,而一些公司不允许使用中文编程,不是担心编程语言在使用中文的时候会出问题,而是有其他考虑。
比如说如果使用中文编程,那么因为编程语言的关键字都是英文,在中英切换的时候会很浪费时间,可能会因此影响编码效率等等。当然,还有一些更加深层次的考虑,但绝对不是因为使用中文编程会出现问题!
举报/反馈