为什么编程时都建议不要用拼音命名?
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
不知道身为程序员的你,曾经有没有用拼音在程序代码中命名变量名、方法名、注释等的经历? 作为国内的程序员,可能有小伙伴会埋怨,编程语言和开发工具都已经⑽牧耍闷匆裘趺戳擞郑缓寐稹� 现如今汉语普及率这么高的今天,全世界都在学中国话,用拼音命名不是挺好。 在这里,我们不妨先思考一下,我们用拼音命名,在实际软件开发过程中,会有什么问题,缺陷在哪里? ChatGpt回复带着疑问,我打开了chatgpt,想知道一下它是怎么看待这个问题?(面向gpt编程,程序员做事的正确姿势 ) 以下是gpt给出的答复: 不得不感叹,gpt回答的确实比较专业,考虑问题也比较全面。 接下来,我们一一来拆解一下: 可读性差如果一个项目,全程都只有你一个人编写与维护,这个问题的影响面可能相对还小一点(不要告诉我,时间一长,你自己都看不懂当时写的语意了,这就尴尬了 )。 但,事实往往是,我们需要在一个大项目中,去编写部分业务模块代码。 有时候,我们为了赶时间或纯粹不想动脑筋,用拼音快速命名了一下临时变量或方法名。 比如下面这个例子: var jianceniandu = ... var nongtianchanliang = ... var dikuaibianma = ... var feiliaohanshuilv = ... 这种代码换做谁看得懂,特别是在没有注释的前提下。 难以表达意义大家看下如下两段代码的对比,一个是用英文命名的方法名,一个是用拼音命名的方法名,大家感受一下,你更愿意看到的是哪个? 第一个方法,都不用我写注释,你一看就秒懂,这个方法表达的意图,做的事情。 但第二个,如果拼音简短一点的可能还好,但凡还要长的,你未必一时能看懂其含义,有时甚至要深入方法内部,查看完所有方法代码后,你才能反应过来,前人写的这个方法名表达的含义。(效率是真的低) public void sendEmail(Message message) { //发送邮件相关代码 } vs public void faSongYouJian(Message message) { //发送邮件相关代码 } IDE搜索困难纠其原因,目前我们开发使用的IDE都是国外的软件,全文索引这块,对英文支持良好,但拼音支持不好,所以,有时候会影响搜索结果的。 跨语言兼容性差如果我们的软件,打算开源,甚至未来有计划捐给一些国外基金会,比如Apache等,那么你写的代码,是面向全球化的,但问题来了,如果你写了拼音这种变量,老外是铁定看不懂的,这会显得这款软件很不国际化。 产生歧义关于这一点,先贴几个案例,大家可以感受一下,先憋着别笑: 相关的案例不少,我就不穷举了。你用拼音命名我就先不说了,你还“简称”代替,你这不要人命嘛。 本文完~
该文章在 2023/9/27 8:54:35 编辑过 |
关键字查询
相关文章
正在查询... |