为啥国内程序员写的代码也用英文注释?
为啥国内程序员写的代码也用英文注释?
-----
网友解答:
-----
1.英语注释表达含义比较确切
2.不存在乱码问题
3.不需要来回切换输入法
4.国际化需求
-----
网友解答:
-----
你好,我是只是说代码的大饼,很高兴回答这个问题。
先说下我自己吧:
我自己代码注释有时用英文,有时用中文,纯粹看个人心情。
因为公司也没强制要求注释是用啥。
其他人嘛,我用如下几点分析下英文注释的原因:
1.公司强制性要求英文注释。
2.有的为了上传Github,让国外的程序员能看懂自己写的代码。
3.因为写代码是要求英文输入法的,写完功能代码后,如果去添加注释,用中文的话还得切换输入法,来回切换确实很麻烦。
4.不排除用英文注释装逼格的。但我个人还是很佩服纯粹用英文写注释的Coder,前提是不要出现语法错误哟,哈哈哈,要不然就出大笑话了。
最后,我想说下,有的说系统对中文支持不好的情况,是注释的话,出现这种情况也没啥啊,因为不会影响到程序的运行啊,只要在开发环境上不显示乱码就ok了。
回答完毕,谢谢。
-----
网友解答:
-----
第一、用英语写注释逼格高,显得“正规”
这是所有原因中最主要的原因。如果不能理解,就想想为什么主流编程语言都支持中文变量名,却极少有人使用。就是因为使用中文变量名,逼格不高,会容易被人耻笑。中文注释,在某些人群中,也是如此。
第二、用英语写注释可以强迫自己提高英语水平
英语是世界语,搞IT的更应当尽可能掌握它。因为编程的核心知识都是用英语书写的(操作系统、编译器、主流编程语言的文档、最受欢迎的开源库的文档等)。强迫用英语写注释可以练习英语。
第三、写英语注释的团队中有外国人
如果用中文写注释,外国的团队成员或领导可能看不懂。
第四、英语注释可以实现代码国际化
写的代码说不定哪天异常成熟,会将某些通用库或通用组件放到开源仓库中。用英语写注释可以国际化,让全世界的程序员都可以看懂,一起完善。不想当将军的士兵不是好程序员,时刻做好国际化准备。
第五、某些平台和操作系统对中文支持不好
在一些生产环境的服务器或嵌入式终端上,因为出于性能考虑没有安装中文支持,或者很想装但是不会也不想学习如何安装。所以只能用纯英文写代码,包括注释,否则会出现乱码。几乎所有平台都支持ASCII码,其中包括了所有的英文字符。但是如果支持中文可能需要安装中文字体。还有一部分人不会玩转字符编码(utf8、GBK、是否带bom等)也索性用纯英文。
第六、不熟练输入法切换所以干脆不切换
一部分程序员不会设置输入法切换的快捷键,不会使用输入法的高级设置(比如自定义标点、中英文混输),导致输入法切换比较繁琐,所以切换输入法成了书写注释的拦路虎。如果全程使用英语来编写代码——包括注释,就可以有效解决这个问题。
-----
网友解答:
-----
目前国内越来越多的开发团队要求程序员采用英文来写注释,除了一些常规的原因(开发平台对于汉字的支撑不足等)之外,采用英文注释与开发团队国际化和开源要求这两个因素有密切的关系。
随着国内互联网企业的快速发展,不少开发团队已经实现了国际化,尤其是一些大型的互联网平台类产品更有较为明显的体现,基于同一个平台可能会开发出大量的国际化版本,此时容器部分的代码注释就需要采用英文编写了,这会在很大程度上方便开发团队之间的交流。
近些年来,不少国内的大型互联网(科技)公司已经开始了全球招聘,在国外读计算机相关专业的毕业生应该深有体会,而且国内企业往往还会开出竞争力比较强的薪资待遇。有不少毕业生在毕业时会选择在国外的科技公司工作一段时间,在积累了一定的技术研发能力之后再寻求回国内发展,此时往往会获得更高的薪资待遇。这些在国外研发团队工作过的研发人员回国后,也会进一步促进国内研发团队的国际化。
实际上,除了互联网公司之外,很多传统软件开发团队往往也要求采用英文来注释代码,比如很多ERP的研发团队就要求代码要采用英文注释。由于ERP软件本身非常庞大,而且很多采用ERP的企业都是全球布局的,所以采用英文注释代码会在很大程度上方便开发人员之间的交流,可以比较方便地完成二次开发。
实际上,ERP的二次开发任务量非常大,很多ERP产品本身就是一个基本的框架,很多功能都需要根据企业的要求进行二次开发。
目前代码采用英文注释还有一个重要的原因,那就是开源的要求。随着国内互联网企业的研发能力越来越强,很多开发团队也希望借助于代码开源来构建自己的生态,而要想把代码开源就必然需要采用英文注释了。
实际上,之前有不少开发团队在代码开源之前,会要求程序员把所有的注释改成英文的,这个工作量也是比较大的。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!
-----
网友解答:
-----
国内程序员用英文写注释无非是以下几个原因:
团队内有老外,方便交流。
代码是开源项目的一部分,或者将来项目可能考虑开源。
避免中文在不同程序平台之间产生乱码问题,如ssh,git等。
涉及专业术语如果采用中文可能变得更加抽象,有时候英文更贴切。
IDE自动生成的代码都是英文注释,比如实体类等。
代码注释可能是通过终端临时添加的,终端当时没有中文输入法。
除以上六种可能外,最后一种可能就是为了装逼显摆。
其实据我了解,身边自己朋友所在的公司注释全为中文的情况很少。 其他答主都是什么情况,欢迎留言讨论!
-----
网友解答:
-----
从事软件开发多年,发现一个有趣的现象,越是技术水平高的程序员越是喜欢用英文注释,反而是刚入行的程序员为了表达清楚采用中文的注释,在这首先承认一个事情的真相,虽然国内有上百万的程序员,但是编程语言的主流还是在欧美,无论从编程语言的起源还是编程生态的建设方面欧美等国家有着优秀的基因,更加重要的一个因素编程语言采用的是英文编程模式,国内也有个易语言但是影响力实在是有限,而且易语言几乎成了游戏外挂的自然编程语言,严格意义上讲不是主流编程语言的发展态势。
为什么国内程序员用英文注释
编程语言本身就是英语。
现在计算机的体系架构遵循冯诺依曼的计算机架构,编程诞生源头主要是在欧美,所以在设计编程语言的时候,当然会选择英文作为基准,所以欧美国家的技术人员,会更加适合学习编程,起码能够排除语言的障碍,在这方面国内的人员相对比较吃亏,所以才有了要学习编程语言首先得有一一定的英文基础,单单因为语言方面就阻挡了很多人去学习编程,无形之中增加了编程语言学习的门槛,因为翻译不准等方面就会延缓学习编程语言的速度。
起码在国内因为不懂英文阻断了很多人学习编程的道路,这是历史遗留下来的问题,也不是短时间能够改变的,中国早晚会拥有属于自己的编程语言,因为任何一种编程语言诞生都有其存在的价值,中文的编程语言早晚会出现,而且早晚会被国人接受但从今天的角度考虑还是需要很长的一段时间。
原汁原味的英文编程文档更加具有权威性。
由于大量的原汁原味的编程资料都是英文完成,所以不懂得英语想要深刻去学习会遇到非常大的困难。特别是在嵌入式领域很多元器件的功能介绍都是英文方式完成,为了完成一个寄存器的功能都要查看好英文的datasheet,由于里面充斥着大量的专利名词,所以读起来还是非常的晦涩,但是为了了解功能还是需要硬着头皮看下去,这种算是比较典型的语言障碍了。
因为不懂得英文让很多人失去了,了解第一手资料的机会,国内很多编程书籍都是直接翻译国外的书籍完成的,就是为了减轻英文水平不好的人学习编程的障碍,但是由于翻译人员本身不一定是技术人员有些专业名词不一定能够解释的非常清楚,所以直接看原汁原味的英文文档会理解的更加透彻。
国内编程语言生态并不完善。
尽量很多人觉得泱泱中华应该有属于自己国家的编程语言,但编程语言生态的建设不是单单编程语言能够设计开发出来就万事大吉了,编程语言生态建设的前提是匹配当前软件编程的大趋势,正好赶上历史机遇适合推广,而且无成本的推广。但目前看国内的编程生态建设的时机并不是很好。
国内程序员在编程的时候时机情况是刚入行的是习惯用中文注释,随着技术能力的提升逐渐习惯于用英文注释,用的时间长了自然就入乡随俗了,从创造实际价值来看至少在当前阶段没有必要刻意去创造一种编程语言,技术能力整体提升之后,水涨船高该有的自然就有了,希望能帮到你。
-----
网友解答:
-----
1,很多开发软件不支持汉字库。
2,即使支持汉字库,因为汉字为双字节,经常出现乱码。
3,软件这套东西本就是国外建立的,用这个东西就得学别人这套东西。
4,注释不是给外行看的,内行都看得懂。给外行看的时候才改成中文。
-----
网友解答:
-----
代码注释是否使用英文,一般是没有强制性要求的,大小项目我都做过,但是都是在小公司,没有去过大公司。 我做的项目一般都是用中文注释的,因为我英文很烂,而且团队没强制要求,所以就用中文注释。
一般国际化的项目,或者团队中有外国人,或者团队有强制要求才会使用英文注释
大型的公司,比如BAT,内部的项目我不知道是否使用英文注释,但是看这些公司的大佬们做的开源项目,几乎都是英文注释。
GitHub是全球性质的,在里面使用英文能更好的交流,我也参与过一些开源项目,里面的注释也都是使用的英文,但大部分都是通过百度翻译的,编程不需要懂英文,但是写注释需要懂英文0.0.
还有些有B格的团队,强制性要求使用英文注释,这是真实存在的,在代码review时,发现中文注释,会拉出来批评教育的。
再就是团队里面有外国人,比如一些全球化的公司,字节跳动、华为等等,里面涉及全球化的项目,必然是要使用英文注释的。
代码注释主要目的是为了描述代码的功能和作用,就是为了方便阅读代码
说到代码注释,很多开发者都不喜欢写代码注释,尤其是新入行的菜鸟开发者,很多不喜欢写代码注释,首先他们没这习惯,其次代码逻辑性不强,写不写无所谓。
我的菜鸟季也是不写注释的。
代码注释就是为了方便阅读代码,就算是自己写的代码,隔个几天都会忘记。
再去回过头看代码,如果没有代码注释的话,你得重新理解一遍代码逻辑,这是很费时费力的。
我的团队没有强制要求写注释,但是我还是会提一点要求,重要的代码块必须写注释。
总结
其实代码注释无关语言的,更多的是为了方便交流和阅读代码,有时候看开源项目源码,碰到英文注释的,通过百度翻译一波,然后再看看代码也就大致理解了。
但是写不写代码注释是很重要的哦。
我是非著名攻城狮,感谢您的阅读与关注!
-----
网友解答:
-----
说说我自己,
第一,输入法切换很麻烦。
第二,编码问题,一不小心跨平台编码,然后就变成了一堆乱码。
第三,许多系统,尤其是比如Linux服务器,嵌入式系统,只能通过终端连上去,这样的系统,中文支持也很不到位。
第四,出错概率小,毕竟中英文切换的时候,注释再混合着编码,很容易出现在代码里面出现汉字标点,排查也很麻烦的。纯英文环境可以规避这种麻烦。
第五,函数变量名等,见名知意,就对英文有一定的要求,这个时候一般配合英文注释,更加统一一些。
总之,后端语言,不涉及用户界面什么的,纯英文省去很多麻烦~
真不行的时候,就用汉语拼音,也很少选择直接出现汉字~
-----
网友解答:
-----
切换中英文是很影响效率的。别说程序员了,连我们画图都是。CAD的命令是英文的,然后标注又要切中文。经常导致画图的时候还是中文状态,要停顿一下。
-----
网友解答:
-----
主要是能装逼,看到我提交的程序里写着满满的英文注释,任何人都不会想到我当年是一个小学都没毕业的人[捂脸] 看很多家日本、德国公司写的程序,只有本国语言的注释,因为人家不会装逼
------------------
推荐阅读: