编程中取名,有什么需要注意?
2016-01-22 14:45
357 查看
写过稍微大的项目的程序员都自己为自己的对象取名是十分麻烦的事情。但是,我自己、包括我见到过的程序员,他们取名都各自遵循自己的一套,十分混乱。在这里,我主要举一些例子,然后分享一下我的取名经验。
1、对于一个类的取名:大家都知道、给类取名首字母是需要大写、后面驼峰式命名,这个原则适合,给类取名;给对象取名;给方法取名;给结构体;枚举器;宏定义、全局静态变量等。例如下图;
![](http://img.blog.csdn.net/20160122142650826?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这是给类取名。
2、给对象取名;在驼峰式命名规则的前提下,我主要遵循这些原则:一、首字母小写。二、尾部加上这个空间的类型,比如是一个UILabel类型,我就在尾部加上一个Label,一般不缩写为Lab。 三、完整性,比如这个按钮的点击事件是查看详情,那我就会命名为viewButton或者viewDetailButton。也就说,见名思意,其他人看到这个命名就应该知道,这个控件的作为。如下例子;
![](http://img.blog.csdn.net/20160122142507379?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20160122142522145?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20160122142536090?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20160122142522145?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
三、给方法命名的话在驼峰式命名规则的前提下,我的想法是:一、完整性。不怕长。二、目的,功能性,看到这个方法名字基本就应该知道这个方法的作用。三、动词开头。比如传值,我会这么取名:- (void)passModelMethod:(TPYGetAllOfPurchaseListModel
*)allOfPurchaseListModel; 如下图;
![](http://img.blog.csdn.net/20160122143805869?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
总结一下;在编程中,我也尝尝为取名而烦恼,比如:有的按钮是一个报价按钮,二报价这个quotation英文单词,不是那么常见。这个时候,就让我头疼了,万一同事们看我的代码,我又得解释。这个时候,该怎么办?由于是多人团队合作开发的时候,规范显得尤为重要。最后的话,我有一个建议;建议团队开发的时候,取名的核心单词都应该按照API文档来。这样会不会好点?如下图;
1、对于一个类的取名:大家都知道、给类取名首字母是需要大写、后面驼峰式命名,这个原则适合,给类取名;给对象取名;给方法取名;给结构体;枚举器;宏定义、全局静态变量等。例如下图;
这是给类取名。
2、给对象取名;在驼峰式命名规则的前提下,我主要遵循这些原则:一、首字母小写。二、尾部加上这个空间的类型,比如是一个UILabel类型,我就在尾部加上一个Label,一般不缩写为Lab。 三、完整性,比如这个按钮的点击事件是查看详情,那我就会命名为viewButton或者viewDetailButton。也就说,见名思意,其他人看到这个命名就应该知道,这个控件的作为。如下例子;
三、给方法命名的话在驼峰式命名规则的前提下,我的想法是:一、完整性。不怕长。二、目的,功能性,看到这个方法名字基本就应该知道这个方法的作用。三、动词开头。比如传值,我会这么取名:- (void)passModelMethod:(TPYGetAllOfPurchaseListModel
*)allOfPurchaseListModel; 如下图;
总结一下;在编程中,我也尝尝为取名而烦恼,比如:有的按钮是一个报价按钮,二报价这个quotation英文单词,不是那么常见。这个时候,就让我头疼了,万一同事们看我的代码,我又得解释。这个时候,该怎么办?由于是多人团队合作开发的时候,规范显得尤为重要。最后的话,我有一个建议;建议团队开发的时候,取名的核心单词都应该按照API文档来。这样会不会好点?如下图;
相关文章推荐
- VC 操作word部分代码(利用剪切板取得Word中的图片,ClipBoard, Addpicture)
- Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderListener
- Java多线程编程中Future模式的详解<转>
- Python爬虫抓取手机APP的传输数据
- php 结合md5的加密,解密方法
- 详解C++成员函数的override和final说明符的用法
- phpStorm使用技巧总结
- windows 64 intel 安装Numpy 报错Microsoft Visual C++ 9.0 is required Unable to find
- php中namespace use用法实例分析
- eclipse luna maven搭建spring mvc
- Spring-webmvc源码解析之PathResourceResolver
- ubuntu15.10安装 jdk
- C#中类的实例是不能 获取到类中的静态方法和静态变量(Static)的,及原因
- Going from u to v or from v to u?_POJ2762强连通+并查集缩点+拓扑排序
- Going from u to v or from v to u?_POJ2762强连通+并查集缩点+拓扑排序
- PHP引用JpGraph库生成坐标图
- java泛型系列文章
- 面试中的C++常见问题
- JavaSE-final关键字
- Python面向对象编程指南