切换到宽版
  • 2990阅读
  • 12回复

[工作]汉语言编程,离我们还有多远 [复制链接]

上一主题 下一主题
离线haiyangqa
在线等级:6
在线时长:275小时
升级剩余时间:75小时在线等级:6
在线时长:275小时
升级剩余时间:75小时在线等级:6
在线时长:275小时
升级剩余时间:75小时
级别:核心会员
 

金币
20
威望
4
贡献
4
好评
3
注册
2006-10-14
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-04-12
汉语言编程,离我们还有多远
作为底层的软件编程人员,每天对着那头疼的英语,陌生而熟悉的字符串代码,每工作完一个case后,都不想再碰这个东西,更别说深入研究,然我却爱好编程,喜欢算法,看到好的代码架构也常常琢磨半天并收为己用。为了学更好的理论,更好的编程,我不得不学英语,由此我想到为什么不能用我们的母语汉语编程而只能用英语编程。
对于汉语言编程,社会上一直对其大多持一种排斥态度,一是编程人员认为其不可能,是一个花花架子,充其量是一个汉化版,二是对编程人员来说不实际,效率不高。我想这里面的原因主要是第一台计算机是英语母语国家的人发明,早期的计算机无法支持双字节字符,还有就是英语已经成了世界语,所有和计算机相关的资料,最新的理论,资料和编程文档都是英文的,在这个世界大环境下偏安一隅的搞自己的民族语言编程语言,有什么意义?
汉语言编程真的不可能么?答案是否定的,从计算机的理论来讲,它只认识二进制码,其他的一概不识,从这方面来讲,英语可以做编程语言,汉语同样也可做编程语言。说什么早期计算机不支持双字节的字符的,而汉语是双字节字符的,所以就不支持汉语言,完全是谬论,计算机支持的仅是字节的位数,与该字节表示的字符无关,汉语被定义成双字节字符,那是因为编译器的结果,是谁写的编译器,是以英语为母语的国家的人写的,他肯定不认识汉字,所以就定义成双字节,然后就定义成一个标准,叫GB312,如果计算机是我们发明的,如果这个编译器是我们写的,还会说计算机不支持汉字语言,汉字要定义两个字节么?
由此可以得出汉语言作为一门编程语言,是可行的,但任重道远,因为要成为一门通用编程语言,就必须有底层汉语言编译器,汉语言操作系统,及上层的汉语言的编译器。然我们目前的芯片,底层单片机MCU,嵌入式处理器EMPU,上层的CPU都是国外提供的,为了产销和垄断顺便也把他们开发的指令码,编译器送给我们用,看似很廉价,但他们把最底层的技术全部封装了起来,只留接口,他们的编译器是不支持汉语言的,所以要想在底层做汉语言编程,就只能做汉化版的,就只能接受GB312双字节的字符码,这样编写出来的汉语言编程肯定既不实用,有浪费时间。
汉语言编程真的没用么?有,而且是很大的作用,因为作为软件编程,编程的核心在思想,而不在语言,程序的核心是算法和数据结构,但对技术人员来讲,有了好的编程思想却因为语言而阻碍编程思想的实现却是不幸的,我想大多数的编程人员若用自己的母语编程,绝对会避免一般语法错误,编程的效率也会大大提高,且代码的优化能力也会大大增强。
现在,在计算机领域,那些前沿理论全部是用英语写的,你看到有汉语的理论文章吗?你看到有我们自己创造的算法和数据结构吗?而你却会看到我们的理论文章在备注时都会引用到那些英语写的理论。我们一直在应用他们的理论,在实践他们的理论,难道我们真的不能创造吗,不是的,是因为我们把一大部分时间去用到学习英语这么语言本身上了,我们的精力是有限的。为什么印度的软件业这么发达,我想其中的原因除了他们的人多,就是他们的母语就是英语。作为一个十三亿的大国,如果为了深入研究计算机应用而去学外语,我觉得太浪费了我们的教育资源,而且结果会事倍功半,因为一门语言代表一种文化,不了解这种文化去学这么语言,学的也不会很彻底。
  汉语作为我们的母语,有理由相信它是比英语可以表述更丰富的一种语言,如果用五笔顺序,绝对会比英语产生更快更有效的代码(注意,我们现在的键盘是英式键盘并不是汉式键盘)。这样,面对操作系统原理的理论时,我们在应用时,就不会为了任务调度,进程互锁而去看我们是否语法错误,指针指向地址错误等,因为编译器原理我们是很清楚的,语法我们更是很清楚的。这样我们可以节省更多的时间来考虑我们编程的架构,我们的算法理论。真正做到从客户的角度去想问题。
  当微软的黑屏事件提醒我们,掌握软件的核心技术是多么重要,我们真的没能力开发操作系统吗,有,我们有一些编程高手开发出自己的操作系统,但他实用吗,不实用,因为他开发出来的不是从用户角度思考的,因为他用的编译器,他用的CPU,开发操作系统的开发环境都是外国人提供的,那么他开发出来的就只能是一个实验型的操作系统,而不是一个客户认同的操作系统,要开发出一个客户认同的操作系统,就必须学习他们先进理论和代码,熟悉他们的操作环境,但这是用他们语言编写的,所以你还必须学他们的语言,最好精通,
这样以来,只要我们去学习英语,进一步的学习他们的理论,只要有团队精神,我们有可能写出一个成功的操作系统,但我们始终是别人理论的使用者,而不是理论的发明者,只有整个编程体系是我们自己的母语的时候,编程思维习惯是我们母语习惯的时候,我们才有可能超越,才有可能创造出我们自己的理论。可以预见,汉语言编程流行之际,必是打破微软操作系统的垄断权利之时。现在微软的操作系统的弊端已经凸显出来,是因为他们的软件写的不好吗,不是是因为理论有了局限。我们要想创造更先进的理论,必须把自己的语言,自己的文化思维融入这个体系中去,否则就永远跟在他们后面。
  软件的核心是创造,其思想就是把具体事物抽象成先复杂事物简单化,再简单数据复杂化的过程,但是它是个系统的工程,就像类和对象的关系,软件架构就是个类,每一个工程都是这个类的对象,当一个类满足不了这个工程的时候,就要升级,这时候原先的软件架构就编程现在架构的一个对象,这个工程量是很大的,所以完成一个软件项目需要的人力非常多,所以微软写一个XP系统,需要那么多的工程师。单打独斗从来就做不了系统项目,系统软件。然由于中国的计算机的高级人才比较缺乏,人才利用还处于散兵游勇阶段,目前,深圳,广州的嵌入式软件,上海,青岛,大连的外包软件和客户软件,北京的基础软件的格局已经形成,相信不久的将来,中国就会变成软件大国,软件强国。
目前,国内的嵌入式软件很火热,我们自己的CPU龙芯也在茁壮成长,这对于我们汉语言编程来说,推行是个好机会,因为有自己的芯片后,我们才能了解计算机最底层的技术知识,才可能编写汉语言的编译器,这样才能有自己的汉语言操作系统,进而有自己的高级编程语言,汉语言开发环境。到时,我们会看到,用地球上最丰富表述的语言做为计算机的执行命令,计算机将执行更丰富,更智能的命令。
但说的容易,做起来不那么容易,随着大学将母语边缘化,特别理工科都不把母语作为一种必修课,导致我们对自己的语言还不是那么了解,特别对编程者来说,看惯abcde的字符串,再看汉字,怎么看就不怎么顺眼,从心里就排斥他。就像很多人说,你看if,else,switch多简洁,而你的“如果,那么”饶口且容易产生歧义。但我要说,任何语言作为一个编程语言都有一个适应的过程,C语言版本不是一直在修订不,最新的已经到C99版本了。一门编程语言看其编程能力如何,主要是在编译器上,所以编译器的架构一定要打好,否则一门好的语言也会生成很多的垃圾代码,编译器技术是国外的专利,他们从来不给我们开放这个核心技术,所以我们必须自己摸索,在自己语言精通的情况下,写出自己的语言规则,然后写出自己的编译器。我们写出的编译器只能用在自己的芯片上,因为外国的芯片不支持汉语言,当然我们也可以把自己的编译器英化,但那会占用更多的空间和产生大量的冗余代码。
汉语言编程应用从那里推广起,从单片机,因为那里是最低层的汇编语言,它可以直接转化为二进制码,如果把汇编语言不是用英文字符,而是用汉语字体,那么就可以大规模推广了,然后到嵌入式操作系统,再到PC操作系统,再到高级编程语言。这时,汉语言编程就可以真正的实现了!作为一个编程人员,用自己的语言编程是一个梦想,用自己的语言编写出一个高效的代码和自己的思维火花,则应该是我们每个人所追求的。虽然,现在看来,用汉语言编程不是那么的实用,那么的高效,还存在一定的困难,但当我们的子孙用我们自己的语言开发出更好的操作系统,掌握并研究出更先进的计算机理论,你能说没有我们的功劳么。难道还希望我们的后代重复我们这一代老路,一边编程,一边啃英语词典,而却面对着对英语丝毫没兴趣的苦恼么。
分享到
离线zrx981140
在线等级:14
在线时长:1339小时
升级剩余时间:11小时在线等级:14
在线时长:1339小时
升级剩余时间:11小时在线等级:14
在线时长:1339小时
升级剩余时间:11小时在线等级:14
在线时长:1339小时
升级剩余时间:11小时在线等级:14
在线时长:1339小时
升级剩余时间:11小时
级别:超级会员

金币
6823
威望
17
贡献
11
好评
6
注册
2004-02-02
只看该作者 沙发  发表于: 2009-04-12
坐一下沙发......................................
在线等级:56
在线时长:16933小时
升级剩余时间:167小时在线等级:56
在线时长:16933小时
升级剩余时间:167小时在线等级:56
在线时长:16933小时
升级剩余时间:167小时在线等级:56
在线时长:16933小时
升级剩余时间:167小时在线等级:56
在线时长:16933小时
升级剩余时间:167小时
级别:Mod

金币
34470
威望
48
贡献
52
好评
21
注册
2007-12-30
只看该作者 藤椅  发表于: 2009-04-12
海洋的外号叫什么来的?以前听烟鬼他们叫过..勋
科利泰厂家直销:有铅,无铅,零卤锡膏,水洗,免洗均有.代理富士和乐泰红胶,销售SMT周边耗材
手机:13824390427(邱晓龙)
QQ一:136638444
QQ二:30772920
买锡膏和耗材的加我,非诚勿扰
离线xyb
在线等级:14
在线时长:1192小时
升级剩余时间:158小时在线等级:14
在线时长:1192小时
升级剩余时间:158小时在线等级:14
在线时长:1192小时
升级剩余时间:158小时在线等级:14
在线时长:1192小时
升级剩余时间:158小时在线等级:14
在线时长:1192小时
升级剩余时间:158小时
级别:资深会员

金币
8660
威望
24
贡献
7
好评
1
注册
2005-06-14
只看该作者 板凳  发表于: 2009-04-12
看不懂,座座地板......
离线文—佑
在线等级:25
在线时长:3569小时
升级剩余时间:201小时在线等级:25
在线时长:3569小时
升级剩余时间:201小时在线等级:25
在线时长:3569小时
升级剩余时间:201小时在线等级:25
在线时长:3569小时
升级剩余时间:201小时
级别:白金会员

金币
4942
威望
15
贡献
3
好评
6
注册
2008-08-31
只看该作者 报纸  发表于: 2009-04-12
hehe !支持下!
                友情顶帖!
离线资江漂流
在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时
级别:资深会员

金币
3476
威望
21
贡献
11
好评
3
注册
2007-05-05
只看该作者 地板  发表于: 2009-04-12
Re:赶紧过来,大家不要当作没有看见啊,翻页有奖!
这是个大事情,加油.........[Reply by WAP]
离线资江漂流
在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时在线等级:14
在线时长:1348小时
升级剩余时间:2小时
级别:资深会员

金币
3476
威望
21
贡献
11
好评
3
注册
2007-05-05
只看该作者 地下室  发表于: 2009-04-12
Re:赶紧过来,大家不要当作没有看见啊,翻页有奖!
这是个大事情,加油.........[Reply by WAP]
离线刘攀小弟
在线等级:8
在线时长:493小时
升级剩余时间:47小时在线等级:8
在线时长:493小时
升级剩余时间:47小时
级别:核心会员

金币
2909
威望
3
贡献
4
好评
2
注册
2006-03-14
只看该作者 7楼 发表于: 2009-04-12
原帖由0楼楼主 haiyangqa 于2009-04-12 16:36发表
汉语言编程,离我们还有多远
作为底层的软件编程人员,每天对着那头疼的英语,陌生而熟悉的字符串代码,每工作完一个case后,都不想再碰这个东西,更别说深入研究,然我却爱好编程,喜欢算法,看到好的代码架构也常常琢磨半天并收为己用。为了学更好的理论,更好的编程,我不得不学英语,由此我想到为什么不能用我们的母语汉语编程而只能用英语编程。
对于汉语言编程,社会上一直对其大多持一种排斥态度,一是编程人员认为其不可能,是一个花花架子,充其量是一个汉化版,二是对编程人员来说不实际,效率不高。我想这里面的原因主要是第一台计算机是英语母语国家的人发明,早期的计算机无法支持双字节字符,还有就是英语已经成了世界语,所有和计算机相关的资料,最新的理论,资料和编程文档都是英文的,在这个世界大环境下偏安一隅的搞自己的民族语言编程语言,有什么意义?
汉语言编程真的不可能么?答案是否定的,从计算机的理论来讲,它只认识二进制码,其他的一概不识,从这方面来讲,英语可以做编程语言,汉语同样也可做编程语言。说什么早期计算机不支持双字节的字符的,而汉语是双字节字符的,所以就不支持汉语言,完全是谬论,计算机支持的仅是字节的位数,与该字节表示的字符无关,汉语被定义成双字节字符,那是因为编译器的结果,是谁写的编译器,是以英语为母语的国家的人写的,他肯定不认识汉字,所以就定义成双字节,然后就定义成一个标准,叫GB312,如果计算机是我们发明的,如果这个编译器是我们写的,还会说计算机不支持汉字语言,汉字要定义两个字节么?
由此可以得出汉语言作为一门编程语言,是可行的,但任重道远,因为要成为一门通用编程语言,就必须有底层汉语言编译器,汉语言操作系统,及上层的汉语言的编译器。然我们目前的芯片,底层单片机MCU,嵌入式处理器EMPU,上层的CPU都是国外提供的,为了产销和垄断顺便也把他们开发的指令码,编译器送给我们用,看似很廉价,但他们把最底层的技术全部封装了起来,只留接口,他们的编译器是不支持汉语言的,所以要想在底层做汉语言编程,就只能做汉化版的,就只能接受GB312双字节的字符码,这样编写出来的汉语言编程肯定既不实用,有浪费时间。
.......

支持.
离线程飓风
在线等级:24
在线时长:3296小时
升级剩余时间:204小时在线等级:24
在线时长:3296小时
升级剩余时间:204小时在线等级:24
在线时长:3296小时
升级剩余时间:204小时
级别:白金会员

金币
160
威望
29
贡献
24
好评
29
注册
2006-09-22
只看该作者 8楼 发表于: 2009-04-12
俺是来客串的....................
离线jyxp
在线等级:17
在线时长:1775小时
升级剩余时间:115小时在线等级:17
在线时长:1775小时
升级剩余时间:115小时
级别:黄金会员

金币
137
威望
10
贡献
15
好评
5
注册
2007-05-13
只看该作者 9楼 发表于: 2009-04-12
原帖由8楼楼主 程飓风 于2009-04-12 22:29发表
俺是来客串的....................

俺是路过的
离线divens
在线等级:11
在线时长:846小时
升级剩余时间:54小时在线等级:11
在线时长:846小时
升级剩余时间:54小时在线等级:11
在线时长:846小时
升级剩余时间:54小时在线等级:11
在线时长:846小时
升级剩余时间:54小时在线等级:11
在线时长:846小时
升级剩余时间:54小时
级别:核心会员

金币
7530
威望
15
贡献
231
好评
12
注册
2003-06-06
只看该作者 10楼 发表于: 2009-04-13
我搅得吧,还是非常有必要的,哼@@@@@@@@
离线roverxie2008
在线等级:10
在线时长:682小时
升级剩余时间:88小时在线等级:10
在线时长:682小时
升级剩余时间:88小时在线等级:10
在线时长:682小时
升级剩余时间:88小时在线等级:10
在线时长:682小时
升级剩余时间:88小时
级别:核心会员

金币
0
威望
5
贡献
6
好评
4
注册
2008-11-26
只看该作者 11楼 发表于: 2009-04-13
這個重任就是落到像尼一樣的人身上了。
离线willing_hsu
在线等级:2
在线时长:78小时
升级剩余时间:12小时在线等级:2
在线时长:78小时
升级剩余时间:12小时
级别:新手实习

金币
19
威望
1
贡献
1
好评
0
注册
2009-02-06
只看该作者 12楼 发表于: 2009-04-13
请问,楼主现在用的是哪种语言编程?哪种开发工具?