查看完整版本: [-- 关于Tianchi库代码开发规范 --]

QTCN开发网 -> 天池项目 -> 关于Tianchi库代码开发规范 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

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. 《天池》核心团队有权在正式版发布时,修改、删除其中的代码,并且不对更新者进行说明或解析。

jeffreylee 2013-05-08 23:33
这么晚了,没休息?

XChinux 2013-05-08 23:45
晚上时间不做些太大的东西了,整理些小东西.大东西留待白天上班时间做.


查看完整版本: [-- 关于Tianchi库代码开发规范 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled