头纱厂家
免费服务热线

Free service

hotline

010-00000000
头纱厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

如何命名编程中最难的事

发布时间:2020-03-23 11:17:30 阅读: 来源:头纱厂家

以下是乔治给出的命名6原则:1. 绝不要用隐喻,明喻或是其他书本上看到的语言描写方式;2. 绝不要用太长的辞汇,如果一个短的辞汇已能说明问题;3. 如果可能缩短用语,就尽可能缩短;4. 绝不要用被动语态的词,如果能用主动语态的词……

如何命名,其实是编程中最难的事。

乔治·奥威尔的命名规范

如何命名?

简言之,根据语意来选择辞汇,别无它法……但是,有时我们会不知用甚么辞汇更适合。

当你想到某个抽象的东西,你更倾向于最早想到的词语,除非你故意不这样,这些词也会抢着出现,直到模糊或改变你的想法。

当你想到一个具体的对象,你觉得词穷,然后你想描写的已看到了,然后你继续寻觅更合适它的词。

6条原则

以下是乔治给出的命名6原则:

1. 绝不要用隐喻,明喻或是其他书本上看到的语言描写方式

2. 绝不要用太长的辞汇,如果一个短的辞汇已能说明问题

3. 如果可能缩短用语,就尽可能缩短

4. 绝不要用被动语态的词,如果能用主动语态的词

5. 绝不要使用外来辞汇,学术术语,如果你能想到意思相近的平常用语

6. 打破上述任何规则,相比更加直接明了的说话方式

这些规则听起来很条文,确切也是如此。但对那些习惯了流行的写作风格的人来讲,这几点却尤其重要。下面具体来解释这六条原则。

1、绝不要用隐喻,明喻:以防过度使用惯用的设计模式,只是由于在代码中看惯了。如:

AbstractCon?gurationFactory

2、只要能短就不要用长词:如果一个短的辞汇已能说明问题,则尽可能使用简洁的变量命名,仅在有更好的理由的条件下才使用长的命名。如:

company_person_collection

vs

Staff

3、如果可能缩短用语,就尽可能缩短:避免添加一些毫无意义的辞汇到命名中。如:

AbstractObjectFormatterProxy

……

pport.

AbstractAnnotationCon?gDispatcher

ServletInitializer

“这就像是同类疗法。你所应当做的就是简化,直到甚么都没有。 ”By Kevlin Henney。

4、尽可能用主动语态的词:能用主动就绝不用被动语态的词,便于用户理解,同时也遵照标识符的语法规则。

如:

class PlanEvents

vs

class EventPlanner,或乃至是class Scheduler。

5、尽可能用平常用语,避免使用外来辞汇或学术术语,不要让来自某个库的专用术语污染你的领域模型,同时也防备那些从其他语言导进“外来”命名的库。

如:ShipmentMonad

6、打破上述任何规则,如果你有更简单明了的表述方式。固然,如果你的代码正刊登在众多知名的网站,如The Daily WTF,你可以疏忽我说的话。(The Daily WTF,美国著名丑陋代码开发、灾害开发案例网站。)

注:许多取决于上下文;

固然,发布库代码和保护私有程序代码是不一样的。

听到这,是否是感觉写代码和写散文一样困难?

我们将在《如何命名:编程中最难的事(下)》中继续为您讲述更多知名人士的观点和建议,如斯蒂芬·金、安妮·赖斯、厄内斯特·海明威、威廉·萨默塞特·毛姆等。

原文链接:slideshare

译文链接:JF杰微刊出品

杭州消化病医院哪家最好

治疗月经不调医院哪家好

贵州白癜风皮肤病医院特色医疗