开发规范

Testing Is Documentation

tests/Docs/Started/SpecificationDoc.php开发规范 - 图1

QueryPHP 遵循 PSR-2 命名规范和 PSR-4 自动加载规范。

文件和目录

PSR-4 基础目录使用小写,其它依次使用大驼峰法命名,例如。

  1. /data/codes/queryphp/application/app/Domain/Entity/
  2. /data/codes/queryphp/application/app/Domain/Entity/Test.php

其中 composer 配置

  1. "autoload": {
  2. "psr-4": {
  3. "App\\" : "application/app",
  4. "Admin\\" : "application/admin",
  5. "Common\\" : "common"
  6. }
  7. }

不存在类文件,请使用小写目录,其文件也一样:

  1. /data/codes/queryphp/option/
  2. /data/codes/queryphp/option/app.php

统一代码风格

为了屏蔽不同用户的不同代码风格习惯,QueryPHP 设置一个统一的代码格式化配置来规范团队的代码风格,这符合 PSR-2 规范并且可以通过 StyleCI 规范。

手工优化

在使用前您需要安装 php-cs-fixer开发规范 - 图2,这样子才能够进行下面的工作。

  1. /data/codes/queryphp/.php_cs.dist # 应用
  2. /data/codes/queryphp/vendor/hunzhiwange/framework/.php_cs.dist # 框架核心包

可以通过下面的方式来格式化代码风格:

  1. $cd /data/codes/queryphp
  2. $php build/php-cs-fixer fix --config=.php_cs.dist

结合 Git Hooks 来格式化代码:

  1. /data/codes/queryphp/build/pre-commit.sh
  2. /data/codes/queryphp/vendor/hunzhiwange/framework/build/pre-commit.sh

应用 QueryPHP 脚本 /data/codes/queryphp/build/pre-commit.sh 核心包 framework 脚本 /data/codes/queryphp/build/pre-commit.sh

WARNING

应用脚本也包含一段 JS 的脚本,这个用于格式化 QueryPHP 的通用前端后台的 JS 代码风格,跟 PHP 差不多。

Git Commit

  1. git commit -m 'pass hook'

上述脚本就会自动运行帮助你格式化代码,你也可以忽略脚本。

  1. git commit -n -m 'pass hook'

这样子我们再也不需要浪费时间在无意义的代码风格的讨论上了。