码迷,mamicode.com
首页 > 其他好文 > 详细

给函数和变量取一个有意义的名字

时间:2015-03-04 16:39:35      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

为什么要给函数和变量取一个有意义的名字?

1. 代码写出来是给以后的自己和别人看的,易于理解的变量名可以更好的阅读,并且可以看出编码者的个人修养和编程功底;

2. 好的变量名字有利于提高自己英语水平(词汇量、表达能力),英语水平提高了,对代码中的注释也是很有帮助的;

3.  可以培养自己咬文嚼字的能力,选用什么样的一个词来表达其在代码中最为贴近的含义;

 

如何给函数和变量取一个有意义的名字?

1. 阅读优秀的代码,体会别人是怎么取变量名的,并不断积累,好记性不如烂笔头;

2. 阅读相关书籍,《代码大全》、《代码整洁之道》;

3. 自己在写的时候,多推敲,可以借助英语词典,选取最为准确表达意思的词;

4. 一有时间就去回顾自己的笔记,加深记忆(应遵循大脑的记忆曲线);

 

函数命名原则:

文件名+动宾结构(filename_dosomething() 函数名前加上文件名的好处是以防止函数未进行static声明时,有可能重复定义;单词首字母最好大写,这样醒目一些,避免多个单词连在一起出现混淆)。 常有单词有:

reset 复位某一个外设,比如复位phy芯片 _ResetPhy8201f

 

init      exit   

_InitConfig _InitReg  Chip_Init Chip_Exit

 

start/run   stop

开始或停止某一状态,比如开启或关闭看门狗,和begin(起始) end区别

 

execute

_ExecuteCmd

 

reg      unreg

_RegOps:注册操作函数,这个一般用于连接设备驱动层次关系(通用代码处理modules层和具体的操作方法实现chips层,连接两者的桥梁是模块配置指针,这样有利于代码的移植性)。

_RegCmd:注册Proc调试接口函数,xxx_RegCmd("xxx", Xxx_ExecuteCmd, XxxCmdUsage);

 

get    set

_SetXxxState _SetXxxParam _SetXxxRunParam _GetXxxPos _SetRegBits _SetGpioDir_SetGpioLevel _SetXxxVal _GetCapacity

 

write   read 

_ReadReg  _ReadRegCache(一个是读寄存器,另一个是读保存在数组当中的寄存器值)_WriteReg  

dowrite doread被write read调用

 

dump  _DumpReg  _DumpInfo

 

open  close

 

input  output

 

probe   Remove

 

create   delete

 

enable   disable使能片选  _EnableCs、读写使能

 

calc 计算(calculate) 计算偏差  

_CalcOffset  _CalcElapse _CalcLength

reverse  forward

1. 翻转,例如SPI传输中,是否需要进行位翻转,Reverse_8/16/32bits

2. 前进和倒退

 

backto退回到某个位置,_BackToZero,退回到原点

 

parse

_ParseHeader 解析一个字符串中的特定字符

show

_ShowInfo _ShowState

 

变量命名原则:

变量命名应遵循准确表达其在代码中所表达的含义。驱动程序中常用的单词有:

1. 寄存器参数结构体T_RegParam:addr    data    num

2. 参数配置结构体T_XxxConfig:

  1)外设和主控制器相连的一些管脚命名,CsPinIdRstPinId

  2)芯片类型Type 页大小PageSize 页总数 PageNum 容量 Capacity 地址标致 i2cFlag 读写超时TimeOut  

3. 设备对象结构体T_XxxDev:几个大部分。

  1) 外设驱动的状态,SpiFlag I2cFlag spi i2c是否probe成功

  2) 寄存器数组 RegCache

        参数配置结构体T_XxxConfig 

  3) 和modules交互的相关结构体

  4) 内核相关驱动机制

    A. 等待队列Wq等待队列判断条件Condition 

    B. 内核定时器Timer

    C. 互斥量Mutex

    D. 内核线程Task

    E. 内核总线通讯机制相关,设备指针这块主要是用来进行总线通信使用,i2c/ spi   SpiDev Client  Adapter

 

给函数和变量取一个有意义的名字

标签:

原文地址:http://www.cnblogs.com/fjays/p/4312696.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!