在代码中添加合适的注释来注解代码可以代码的可读性,可以使得自己和团队其他成员在之后的代码的审查和维护中更加省时省力。
一、注释格式说明
1.类或文件注释
类或文件注释使用
PEAR
推荐的多行注释方式,不能使用//
来注释:所有类必须添加说明信息,推荐项目包括:创建者信息、创建时间、更新时间、更新说明、版本号、程序(文件)描述、项目名称等,注释信息可根据需要添加或减少。
例:
/** * @access 该标记用于指明关键字的存取权限:private、public或proteced使用范围:class,function,var,define,module * @author 指明作者 * @copyright 指明版权信息 * @const 使用范围:define 用来指明php中define的常量 * @final 使用范围:class,function,var 指明关键字是一个最终的类、方法、属性,禁止派生、修改。 * @global 指明在此函数中引用的全局变量 * @name 为关键字指定一个别名。 * @package 用于逻辑上将一个或几个关键字分到一组。 * @abstrcut 说明当前类是一个抽象类 * @param 指明一个函数的参数 * @return 指明一个方法或函数的返回值 * @static 指明关建字是静态的。 * @var 指明变量类型 * @version 指明版本信息 * @todo 指明应该改进或没有实现的地方 * @link 可以通过link指到文档中的任何一个关键字 * @ingore 用于在文档中忽略指定的关键字 */
2.方法函数注释
- 方法函数外部说明使用
PEAR
推荐的多行注释方式,不能使用//
来注释 - 方法函数内部代码注释时单行使用
//
注释,多行使用/** ... */
来注释
3. 抽象方法注释
- 抽象方法说明使用
PEAR
推荐的多行注释方式,不能使用//
来注释 - 必须说明返回值、参数和实现功能
4.代码注释
- 使用
//
来单行注释代码片段、业务逻辑等 - 使用
/** ... */
来多行注释代码片段、业务逻辑等
5.特殊注释
-
// TODO
:标记待办的业务逻辑
反例:
//我要做的事 if (true) { // TODO }
-
// FIXME
:存在错误,需要修补
反例:
//我要做的事 if (true) { //do something // FIXME }
二、其他说明
- 注释内容必须在注释对象之前,不能再同一行
反例:
//我要做的事 if (true) { //TODO }
- 注释中建议使用中文,不建议使用英文
- 注释要与注释对象对齐
- 后期修改代码时要同时修改注释
- 注释掉的代码要尽量使用注释说明
- 注释最好不要太多,必要之处加以注释即可,语义清晰之处尽量不要使用注释,以免本末倒置,增加后期代码维护的工作量
由于本人学艺不精,未尽之处还望海涵,有误之处请多多指正,欢迎大家批评指教
本文 完