摘要:两者的共同点,就是“类型后置”,变量声明在前面,后面是变量类型!
最近比较“新”的编程语言,譬如Go,都有变量类型在后面的特点!
当然Go也已经推出15年了,时间真快。
Go语言里面声明一个变量,一般是这样:
var b intlet b:int32 = 100;两者的共同点,就是“类型后置”,变量声明在前面,后面是变量类型!
Java、C++、C#则是变量类型前置:
int b=100;Go、Rust这种类型放在后面的方式,让很多程序员感到非常不适应。
为什么?
一方面是c系语法的编程语言非常流行,譬如JAVA和c#,用来用去大家都习惯了。
另外一个方面,我觉得,跟中国人的行为方式也有关系!
平常,我们会说:”操作员小王“,而不说”小王操作员!“,那样甚至会变成一种表扬(狗头)
在一般情况下,故事模式里面,都是“操作员小王”这样的。
同时,外国人就不一样了。外国人都是“姓在后面”,造出的一个后果就是“后置”!
篮球飞人是迈克尔乔丹,而不是乔丹迈克尔!乔丹是他的姓氏,他爸爸爷爷也用这个,放在后面!
这就是中国人和外国人的区别。
既然外国人名字都这样,那他们的潜意识里面恐怕都会受影响,类型放后面也无可厚非!
我们中国人就难受了!
这是我想到的一个原因!
从前后顺序来讲,可以认为“前面”的部分是比较重要的部分。
中国人把“姓”放在前面,显然是一种“家族荣耀”的性质在里面。在魏晋南北朝的时候,没有科举制度,只有举荐制度。这个时候,一个人的家族举荐就会成为成功的重要因素。
这就是为什么是”旧时王谢堂前燕,飞入寻常百姓家”中的“王谢”等大家族鼎盛的原因。
外国人则不同,更加体现个性,认为个体第一,我就把名字放在前面。
观念不同造就行为,行为有时候也会促进行为,外国人就是这样的“自由”!
从程序角度来讲,把变量名放在前面,其实也是一个很好的方法。
因为一般情况下,通过了编译的程序,其中的变量类型基本都是正确的。这个时候,变量的含义则更加重要,变量名称的重要性就由此凸显!
所以,类型后置也未尝不可!
在电脑发展的早期,Pascal、Delphi都是类型放在后期。
当时写Delphi程序的时候,必须规规矩矩的书写。
var里面先声明变量,
begin。。end里面声明过程、函数!
当时,确实有一种整整齐齐的感觉,非常Nice。
随后,跟着Anders进入了C#的时间,后来又混Java,这才又重新回到了C的类型前置阶段!
我个人的角度来讲,都是可以接受的。
甚至于对于“自动推断类型”也非常容易理解;
var i=100‘ //c#j :=100 //golet k=100; //rust看看我写了多少变量声明的写法,就知道我写了多少个“Hello World”!
最后总结一下,对很多人而言,C系的语法(C#、Java、Javascript、C、C++)的写法更容易接受,开门见山的感觉。
类型后置,刚开始的时候让人有点不习惯,这也是真的,习惯一下就好!
来源:麻辣小王子