XChinux |
2013-05-08 23:30 |
关于Tianchi库代码开发规范
现在先整理一部分代码规范: 1. 除特殊约定以外,所有类,全部在全局中,并以Tc为前缀。 2. 全局函数,或放在类中(静态成员函数),或放在Tc名字空间或其子名字空间下。 3. 枚举类型,或定义在类中,或定义在Tc名字空间或其子名字空间下。 4. 目录、文件名均小写,文件名与主要类名保持一致。 5. 自定义类成员变量名加前缀为 m_ 。若要定义Private类,请参考include/tianchi/gui/tclineedit.h和src/gui/tclineedit.cpp 6. 方法名的命名方式参照 Qt 标准,首字母小写,其它单词首字母大写,中间不含下划线(_) 7. 类成员的 get 方法不含 get 前缀,但 set 方法全部包含 set 前缀 8. 除头文件防重复包含的预定义名外,其它预编译条件禁止使用 #ifndef ,请改为 #ifdef 或 #if defined(...) 9. 对于函数定义中不使用的参数,使用Q_UNUSED(xxx)来消除编译警告信息 10. 对于要固定基本类型的变量或常量,请使用qint8, quint8, qint16, qint32, qlonglong, qint64等,避免使用__int64等类型 11. 判断编译器请使用Q_CC_GNU,Q_CC_MSVC类宏,判断操作系统平台请使用Q_OS_WIN, Q_OS_WIN32, Q_OS_WIN64之类的宏 12. 在同时兼容Qt4和Qt5的代码中,禁止使用C++11特性 13. 在代码中禁止使用Qt定义的关键字,而是使用宏代替,比如signals/Q_SIGNALS, slots/Q_SLOTS, emit/Q_EMIT, foeach/Q_FOREACH 14. 类设计尽量保持二进制兼容(可采用Private类设计), 对于不可复制的类,请使用Q_DISABLE_COPY宏说明 15. 允许参与者在源码的注释部分包括自己的名字和简介 16. 对为 public 接口进行用途和用法说明,共享库最终使用 doxygen 输出使用文档,请遵循 doxygen 的语法要求。 17. 源码发布格式统一采用 AStyle 方式整理,对参与人员不作强制要求,但请尽量保持代码有较高可读性。 18. 《天池》核心团队有权在正式版发布时,修改、删除其中的代码,并且不对更新者进行说明或解析。 |
|