spark-store/docs/structure_and_naming.md
2021-09-19 20:23:41 +08:00

1.6 KiB
Raw Permalink Blame History

项目结构和命名规范

文件夹结构

cmake

主要用于 CMake 配置时需要用到的 CMake 模块脚本。

gui

主要用于显示界面的 C++ 代码文件(即包含 Qt Widgets 代码),无论包含多少与其他组件的联系,都在这个目录内。 这包括 SpkUi 的自定义界面组件、商店主界面自身的 Page 类等等。

inc

项目中所有以 #include "xxx.h" 方式包含到代码中的标头文件,全部放入此目录。 标头文件并不强求目录结构明确,文件用途或来源特殊的除外。

src

商店主体逻辑。包含基础的 SpkStore 类、main.cpp 等核心逻辑。 新加入的逻辑如单个功能多于一个cpp文件则必须分装到一个目录内。

plugin

适配 Deepin 以及其他平台的平台相关插件。

命名规范

通用规范

类名、成员、方法名一律采用大驼峰形式。例如,SpkTitleBar::SetTitle 方法。 C++ 规范要求的和第三方库有较大差异的除外。例如,SpkUiMessage::_notify成员。 临时变量采用小驼峰形式或全小写。

名称要对功能要有基础的描述,例如,SpkUi::SpkCategorySelector 类。抽象核心逻辑除外。

类名

如非第三方代码,一般以 Spk 前缀标明。 实现 UI 的类都应归于 SpkUi 命名空间。

类定义

一般规则

Qt 类的 Q_OBJECT 应置于类定义最顶端。 public protectedprivate 等标签中只应该包含一类成员, 如单个 public 标签内只能包含方法,或成员。 信号、槽等不得与普通方法混合。