什么,你还在用拼音命名法?

  点击上方“JavaEdge”,关注公众号

设为“星标”,好文章不错过!

不管如何,我们必须承认,火遍全球的程序设计语言都是英语所编写。

所以,想抵达程序员的顶尖,会用英语写代码是必要的。

63eb00d6e9fa3ffd56f0f923a1ca816d.png

无视英语语法

e40586e0b9a5a267a415895c41062b24.png

乍看,将章节信息标为翻译完成,方法名好像也能表达这意思,但经不起推敲。

代码意图“完成翻译”,所以取名:

  • 完成时 completed

  • 翻译的英问 translate

一般命名规则:

  • 类名,名词
    表示一个对象

  • 方法名,动词、动宾短语
    表示一个动作

以此评判,将方法名改成动宾结构:

  • 完成 译 complete

  • 翻译 用其名词 translation

所以,方法名应该是 completeTranslation。


再如,一个方法名 retranslation,意图重新翻译,但作为方法名,应该是个动词,所以应该是 retranslate


597fece6bdd2698296fb73f080173161.png

不准确的英语词汇

cc863a806cd4eb68d7c5f1aed061911b.png

某审核功能的审核状态:

c1c5b7aefc2aa1c3cdde5219018f6c38.png

有问题吗?

估计你也这么写。将审核甩进 Google 翻译,确实就是 audit。

33080a7ed392f139b82987b2cd6b0033.png

所以,审核状态写成 AuditStatus。

然而,这个词好像不太对。知道 CodeReviw 吧?同样是审核,还有review呢。他俩有啥区别呢?再细查:

  • audit 更官方,更准确翻译应该:审计

  • review 则有更多核查的意思

    相比起来,更适合该场景

这类问题的确尴尬,本来英语水平就不高,更难以清楚单词间差异。所以各大公司招聘也都要求至少四六级。毕竟很多人就是把中文扔到 Google 翻译,拿到翻译结果就用,这是很多此类问题的根源。就像一个不熟悉中文的外国人说中文,你听得懂他在说啥,但总有哪里怪怪的。

ffd39aa356056bd1eeb8375d0bd301d2.png

解决方案

团队交流,产研测共同确定一个词汇表-业务术语的中英文表达,三个臭皮匠顶个诸葛亮。写代码时即可参考这个词汇表给变量和函数命名。这也是DDD时构建通用语言的成果。

53250864cc3c93af24da20d9f5e7cf95.png

英语单词的拼写错误

48023d1b15b1a5b174123e452f1520e1.png

一段蜜汁代码:

e5bb878643823e427c83fbdde085825b.png

居然还会封装查询排序,这确实比那些把字符串传来传去的做法要好。

但细看,sortFiled 是啥?排序文件吗?为啥还是过去式?归档?
找到作者,果然拼错了。偶尔拼写错误不可避免,像 IntelliJ IDEA 这样的 IDE 甚至可以给你提示代码里有拼写错误(typo),只要稍微注意一下,就可以修正这类低级错误。

往期推荐

拥抱Kubernetes,再见了Spring Cloud

百度二面:一个线程OOM了,其它线程还能运行吗?

我是如何一步步让公司的MySQL支撑亿级流量的?

你真的思考过自己写的代码为啥这么垃圾吗?

目前技术交流群已有 1000+人,可关注公众号添加笔者微信,邀请进群

后台回复“面试”,白嫖价值千元的互联网大厂求职面试资源。

喜欢文章,点个“在看、点赞、分享”素质三连支持一下~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值