qq永久封号 代码

在您的职业生涯的某个时刻,您会发现自己离开了正在进行的项目,并正面临新的挑战(无论好坏)。 无论是在其他公司或团队中担任其他角色,还是将项目外包给其他团队甚至其他国家的公司。

无论出于何种原因,都有很大的机会在某个时候不会解释您的代码。 在我整个职业生涯中曾参与过多个项目,并与其他国家的几个程序员一起工作过,我想向您介绍一些技巧,以避免在您的代码中使用这些技巧来过渡到其他团队和非英语母语的程序员降低难度和成本。

所有这些都是我见过的现实生活中的示例代码(不幸的是,偶尔会编写)。 请以它为例,避免永久存在。

缩略语

这是无所不在的。 每个人都喜欢使用缩写,因此不必输入太多。 不幸的是,大多数人没有意识到,要“不为人知”的程序员调试代码要付出多少努力。

例如,您正在编写一个在国际银行系统中转移资金的系统。 您必须处理数百种不同类型的传输。 不用一遍又一遍地进行类型传输,而应使用缩写xfer。

您是否曾经在字典中查找xfer? 试图接管您的代码的人可能也找不到它! 缩写越晦涩(任何人都知道“ Penna”的缩写吗?),其他人将很难理解您的逻辑。

数字作为单词

这也是很常见的,尤其是在限制函数名称长度的语言中。

您想编写一种将业务对象转换为字符串以吐出到文件中的方法,因此将其称为cnvrtObj2Str。 这具有使用缩写(如上所述)以及将数字2替换为单词“ to”的优点。 想象一下,如果您看到“ 2”并认为“ zwei”,那么cnvrtObjZweiStr对您意味着什么? 特别是如果您已经在使用缩写词了。

如果其他程序员也不是本地人也不使用阿拉伯数字,这将更加困难。

文化参考

这是不常见的,但仍然是一个问题。 我参与了一个项目,该项目允许用户将样板合同条款放在一起,以制定特定于特定客户的文档,但是该文档是由法律部门已经批准的文本制成的。

很快,法人就需要创建新的条款,因此开始了一个新项目。 由于该项目基本上是子句的辅助应用程序,因此以美国为中心的团队将其称为ELF(圣诞老人子句的辅助对象,明白吗?)。 为了帮助区分这两个应用程序之间的代码,使用了elf软件包,并在许多类名称中使用了ELF字样。

当需要将编码职责从另一种文化转移到另一个团队的时候,人们就ELF的含义进行了多次讨论。 尽管多次解释说它没有任何意义,但这个问题一次又一次出现。

另一个例子是在一些处理大量集合的Java代码中。 程序员试图为他的迭代器使用逻辑变量名,但最终由于所有重复而疲于奔命。 瞧瞧,代码散布着如下声明:Iterator schmiterator。

虽然代码仍然可以理解,但是其他不熟悉文化参考的程序员必须停下来思考他们以后在代码中看到的内容。 当他们看到schmiterator.next()时,这对他们来说不太直观。 他们不得不停下来思考:“什么是施密特,它给我带来了什么?”

现实世界的解决方案

现代开发环境以内容完成的形式提供帮助。 不用说出您的名字缩写或使用数字代替单词,而是将其拼写出来。 当您以后需要引用它们时,IDE将进行大多数键入操作,并且您将确保始终获得正确的名称。

毕竟,当您从现在开始6个月后正在阅读代码时,您会更容易理解cvrtRur2Usd4Xfer还是convertRublesToUsDollarsForTransfer? 善待自己的未来。

最后,不要变得可爱。 我们都很无聊,我们都和团队中的其他人分享内在的笑话。 但是,今天可爱而有趣的事物在以后可能看起来很幼稚而幽默。 我们应该是专业人士,我们不仅应该像它一样行动,我们的代码也应该看起来像它。 在我们的最终结果中揭露那些笑话并不是对我们时间的有效利用。 毕竟,这不是我们所有人都在追求更高的生产力吗? 因为我们做得越快,我们就能越快回家,并花更多的时间陪伴家人。

最后的想法

我们都是负责任的程序员,他们希望那些必须接管我们的代码的人员尽可能少地强调它。 毕竟,过去我们不得不接管其他人的代码,将来我们将不得不再次做。 因此,请提前付款并避免所有这些情况。

PS我的编辑说:“我将来会在某个时候使用schmiterator,但我会简称它。”

翻译自: https://www.javacodegeeks/2015/03/avoid-perpetuating-these-things-in-your-code.html

qq永久封号 代码

更多推荐

qq永久封号 代码_避免在代码中永久保留这些内容