美文网首页杂文集
二、有意义的命名

二、有意义的命名

作者: 树下老男孩 | 来源:发表于2015-12-16 09:37 被阅读244次
名副其实:

变量、函数或类的名称就能够说明为什么它存在,做什么事,怎么用,如果需要注释来补充,就不算名副其实:

//消逝的时间,以日计, bad!
int d;

//good
int daysSinceCreation; 
int daysSinceModification;  
避免误导

避免留下隐藏代码本意的错误线索。
accountList 一组账号,如果类型不是List会引起误判,accountGroup或bunchOfAccoutns,甚至accounts,更可怕的例子:使用小些字母l跟字母O作为变量名

做有意义的区分

代码是写给人看的,仅仅是满足编译器的要求,就会引起混乱

  • 以数字系列命名:void copyChars(char a1[],char a2[]) ==> void copyChars(char source[],char destination[])
  • 说废话: a, an, the, Info, Data
  • 使用可读的名字:避免过度使用缩写,genymdhms (生成日期,年月日时分秒)
  • 使用便于搜索的名称:避免使用Magic Number,避免使用单字母,或出现频率极高的短字母组合(注意度的把握);MAX_CLASSER_PER_STUDENT 跟 “7” “e”
类名

类名和对象名应该是名词或名词短语,Customer、Account

方法名

动词或动词短语:deletePage、save,属性访问、修改和断言:加上get、set和is

别装可爱

使用俗语或俚语, eatMyShorts()表示abort() eatMyShorts:去死吧

每个概念对应一个词

给每个抽象概念选一个词,并一以贯之。比如获取数据可以使用fetch、retrive、get这些词语,但最好能够统一使用一种(controller、manager类似)

名字尽量来自解决方案领域或问题领域:
  • 使用解决方案领域名称:使用计算机领域的科学术语、算法名、模式名等。如AccountVisitor:Visitor模式实现的Account类。
  • 使用问题领域的名称:如果不能用程序员熟悉的术语来命名,就采用所涉问题领域的名称。排序==> sort
适当使用有意义的语境:
  • 良好命名的类、函数、名称空间来放置名称,给读者提供语境
  • 给名称前加前缀:firstName、lastName、street、houseNumber、city、state和zipcode,和在一起知道是地址,孤零零时无法推断, state=》addrState
  • 事不过三,如果传递给函数的变量超过三个,考虑封装成概念,添加struct或class
  • 不要添加没用的语境

相关文章

  • Clean Code Notes(代码规范)

    [TOC] Clean Code Notes 1_命名 1.1_命名要点 有意义的命名 有意义的区分 有意义命名部...

  • 二、有意义的命名

    名副其实: 变量、函数或类的名称就能够说明为什么它存在,做什么事,怎么用,如果需要注释来补充,就不算名副其实: 避...

  • 二、有意义的命名

    1.名副其实 比较如下两段代码(忽略变量未定义问题) 2.做有意义的区分 谁能说出下面这三个方法的区别? getA...

  • 设计模式

    一、设计模式: 1、什么是设计模式 2、 二、有意义的命名 名副其实 避免误导

  • 如何创作更有吸引力的文案,如何才能更好地吸引客户?

    打造朋友圈?标题命名,背景是关键?一.命名要简单有意义比如姓名+类型,避免有字符,标点,图形,比如带A 二.背景:...

  • 写js代码的一些小技巧

    一.变量 使用有意义的且常用的单词命名 常量全大写: 避免无意义的命名: 传参使用默认值: 二.函数 函数参数最好...

  • JS中的命名规范

    JS中的命名规范 第一点:JS严格区分大小写 第二点:命名的时候遵循`驼峰命名法 一个名字可以由多个有意义的单词组...

  • java编码规范(更新中)

    编码规范 命名规范 任何包名、类名、方法名、属性等都要使用有意义的单词,有意义的命名;命名不在于长,而在于解释 包...

  • 有意义的命名

    前言 在开发过程中,给变量以及方法提供一个有意义的命名至关重要。有意义的命名对代码可读性的提升有很大帮助。一个项目...

  • 有意义的命名

    名副其实 变量名应该告诉你:他为什么会存在,他做什么事,他应该怎么用 如果名称需要注释来补充,那就不算名副其实 p...

网友评论

    本文标题:二、有意义的命名

    本文链接:https://www.haomeiwen.com/subject/bwnuhttx.html