为啥国内程序员写的代码也用英文注释?

AnitaSong


1:懒得换输入法

2:公司可能有海外顾问,用中文人家看不懂

3:有些软件不兼容中文,出现中文容易崩溃


狰狞乾坤


mac还好,公司用win,敲个花括号时常不小心就敲成了中文的,抓狂😫shift使用频率那么高的键放俩功能真是脑残的很,当然人家本身就用英语不用切输入法无所谓了


亚太单身狗保护协会


第一、用英语写注释逼格高,显得“正规”

这是所有原因中最主要的原因。如果不能理解,就想想为什么主流编程语言都支持中文变量名,却极少有人使用。就是因为使用中文变量名,逼格不高,会容易被人耻笑。中文注释,在某些人群中,也是如此。

第二、用英语写注释可以强迫自己提高英语水平

英语是世界语,搞IT的更应当尽可能掌握它。因为编程的核心知识都是用英语书写的(操作系统、编译器、主流编程语言的文档、最受欢迎的开源库的文档等)。强迫用英语写注释可以练习英语。

第三、写英语注释的团队中有外国人

如果用中文写注释,外国的团队成员或领导可能看不懂。

第四、英语注释可以实现代码国际化

写的代码说不定哪天异常成熟,会将某些通用库或通用组件放到开源仓库中。用英语写注释可以国际化,让全世界的程序员都可以看懂,一起完善。不想当将军的士兵不是好程序员,时刻做好国际化准备。

第五、某些平台和操作系统对中文支持不好

在一些生产环境的服务器或嵌入式终端上,因为出于性能考虑没有安装中文支持,或者很想装但是不会也不想学习如何安装。所以只能用纯英文写代码,包括注释,否则会出现乱码。几乎所有平台都支持ASCII码,其中包括了所有的英文字符。但是如果支持中文可能需要安装中文字体。还有一部分人不会玩转字符编码(utf8、GBK、是否带bom等)也索性用纯英文。

第六、不熟练输入法切换所以干脆不切换

一部分程序员不会设置输入法切换的快捷键,不会使用输入法的高级设置(比如自定义标点、中英文混输),导致输入法切换比较繁琐,所以切换输入法成了书写注释的拦路虎。如果全程使用英语来编写代码——包括注释,就可以有效解决这个问题。


犍为真人


从事软件开发多年,发现一个有趣的现象,越是技术水平高的程序员越是喜欢用英文注释,反而是刚入行的程序员为了表达清楚采用中文的注释,在这首先承认一个事情的真相,虽然国内有上百万的程序员,但是编程语言的主流还是在欧美,无论从编程语言的起源还是编程生态的建设方面欧美等国家有着优秀的基因,更加重要的一个因素编程语言采用的是英文编程模式,国内也有个易语言但是影响力实在是有限,而且易语言几乎成了游戏外挂的自然编程语言,严格意义上讲不是主流编程语言的发展态势。

为什么国内程序员用英文注释

编程语言本身就是英语。现在计算机的体系架构遵循冯诺依曼的计算机架构,编程诞生源头主要是在欧美,所以在设计编程语言的时候,当然会选择英文作为基准,所以欧美国家的技术人员,会更加适合学习编程,起码能够排除语言的障碍,在这方面国内的人员相对比较吃亏,所以才有了要学习编程语言首先得有一一定的英文基础,单单因为语言方面就阻挡了很多人去学习编程,无形之中增加了编程语言学习的门槛,因为翻译不准等方面就会延缓学习编程语言的速度。

起码在国内因为不懂英文阻断了很多人学习编程的道路,这是历史遗留下来的问题,也不是短时间能够改变的,中国早晚会拥有属于自己的编程语言,因为任何一种编程语言诞生都有其存在的价值,中文的编程语言早晚会出现,而且早晚会被国人接受但从今天的角度考虑还是需要很长的一段时间。

原汁原味的英文编程文档更加具有权威性。

由于大量的原汁原味的编程资料都是英文完成,所以不懂得英语想要深刻去学习会遇到非常大的困难。特别是在嵌入式领域很多元器件的功能介绍都是英文方式完成,为了完成一个寄存器的功能都要查看好英文的datasheet,由于里面充斥着大量的专利名词,所以读起来还是非常的晦涩,但是为了了解功能还是需要硬着头皮看下去,这种算是比较典型的语言障碍了。

因为不懂得英文让很多人失去了,了解第一手资料的机会,国内很多编程书籍都是直接翻译国外的书籍完成的,就是为了减轻英文水平不好的人学习编程的障碍,但是由于翻译人员本身不一定是技术人员有些专业名词不一定能够解释的非常清楚,所以直接看原汁原味的英文文档会理解的更加透彻。

国内编程语言生态并不完善。尽量很多人觉得泱泱中华应该有属于自己国家的编程语言,但编程语言生态的建设不是单单编程语言能够设计开发出来就万事大吉了,编程语言生态建设的前提是匹配当前软件编程的大趋势,正好赶上历史机遇适合推广,而且无成本的推广。但目前看国内的编程生态建设的时机并不是很好。

国内程序员在编程的时候时机情况是刚入行的是习惯用中文注释,随着技术能力的提升逐渐习惯于用英文注释,用的时间长了自然就入乡随俗了,从创造实际价值来看至少在当前阶段没有必要刻意去创造一种编程语言,技术能力整体提升之后,水涨船高该有的自然就有了,希望能帮到你。


大学生编程指南


目前国内越来越多的开发团队要求程序员采用英文来写注释,除了一些常规的原因(开发平台对于汉字的支撑不足等)之外,采用英文注释与开发团队国际化和开源要求这两个因素有密切的关系。

随着国内互联网企业的快速发展,不少开发团队已经实现了国际化,尤其是一些大型的互联网平台类产品更有较为明显的体现,基于同一个平台可能会开发出大量的国际化版本,此时容器部分的代码注释就需要采用英文编写了,这会在很大程度上方便开发团队之间的交流。

近些年来,不少国内的大型互联网(科技)公司已经开始了全球招聘,在国外读计算机相关专业的毕业生应该深有体会,而且国内企业往往还会开出竞争力比较强的薪资待遇。有不少毕业生在毕业时会选择在国外的科技公司工作一段时间,在积累了一定的技术研发能力之后再寻求回国内发展,此时往往会获得更高的薪资待遇。这些在国外研发团队工作过的研发人员回国后,也会进一步促进国内研发团队的国际化。

实际上,除了互联网公司之外,很多传统软件开发团队往往也要求采用英文来注释代码,比如很多ERP的研发团队就要求代码要采用英文注释。由于ERP软件本身非常庞大,而且很多采用ERP的企业都是全球布局的,所以采用英文注释代码会在很大程度上方便开发人员之间的交流,可以比较方便地完成二次开发。

实际上,ERP的二次开发任务量非常大,很多ERP产品本身就是一个基本的框架,很多功能都需要根据企业的要求进行二次开发。

目前代码采用英文注释还有一个重要的原因,那就是开源的要求。随着国内互联网企业的研发能力越来越强,很多开发团队也希望借助于代码开源来构建自己的生态,而要想把代码开源就必然需要采用英文注释了。

实际上,之前有不少开发团队在代码开源之前,会要求程序员把所有的注释改成英文的,这个工作量也是比较大的。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!


IT人刘俊明


绝大部分人都在这里胡说八道。真正对软件用户负责的代码,一定是中文注释。写英文除了国际项目,只能说他是抄来的,注释没改。写汉语拼音的,绝对是懒的切换输入法,而且对注释不在意,无需说明。而且提问人,你哪只眼睛看到国内注释都用英文了,胡说八道。


比克大魔王50


英文注释难道就比汉语注释逼格高一等???

崇洋媚外,垃圾。

注释是让人更方便的了解代码的功能,不是非要用英文装逼的。


九元长老弟子


问这个问题的,没有写过程序。

程序员根本不会问这种问题,强制用中文注释会让大多数程序员都疯掉。


钦赐太医


我见过除了关键字是英文,变量名方法名类名全是中文的代码,跑起来一点问题也没有,就是看起来别扭,和作文一样


ZHBingo


并不是国内程序员写的注释都是英文的,很多国内的项目都有用中文注释的。

但是,一般大企业,大公司的都会要求用英文注释。

首先 BBA这个级别的大公司,工作的可不仅仅只有中国人,但不管哪个国家的程序员都看的懂英文。所以用英文注释方便交流。

第二,大公司的项目和小公司的项目不一样。小公司项目写完就完,但是人家大公司一般都会把项目做成开源项目。也就是说,人家站的层次更高,不光是干活,还早给其他程序员造轮子。

开源项目的话,由于是面向全世界的,所以英文注释就非常有必要了。

第三 大型项目不是不是小孩过家家,里边肯定要用到其他人的类库,这些类库可能是美国人写的,也可能是俄罗斯人写的,不论哪个国家的代码,文档,注释统统都是英文,所以,你自己写注释和文档,也应该保持英文。

那些说写英文注释是装逼,不知道是个什么心态,这种心态,这种智力水平,还是别干程序员了。


分享到:


相關文章: