应用开发

添加新应用

  • 应用开发建议以插件的形式进行开发
  • 插件开发以hyperf组件应用开发示例 - 图1 (opens new window)的形式,来添加新功能(模块)。具体文档可参考hyperf组件开发文档,这里不在详述
  • 开发完成之后,可以通过composer require 组件名称来安装,hyperf会通过ConfigProvider机制来自动加载

插件目录范例

一个组件包,包含了 ./app下所有的目录结构,只需通过注解与配置,就可以自动加载并运行,和在./app下写代码没有任何区别

  1. ├── composer.json
  2. ├── publish
  3. ├── chat_tool.php
  4. ├── migrations
  5. └── 2020_12_04_180819_create_chat_tool_table.php
  6. └── seeders
  7. └── chat_tool_seeder.php
  8. ├── README.md
  9. └── src
  10. ├── Action
  11. └── Index.php
  12. ├── ConfigProvider.php
  13. ├── Constants
  14. └── Status.php
  15. ├── Contract
  16. └── ChatToolServiceInterface.php
  17. ├── Exception
  18. └── ChatToolException.php
  19. ├── Functions.php
  20. ├── Model
  21. └── ChatTool.php
  22. └── Service
  23. └── ChatToolService.php

修改原应用

如果有修改 ./app下代码的需求,同样建议以插件(hyperf组件)的开发形式,通过AOP 面向切面编程应用开发示例 - 图2 (opens new window)、契约+指定依赖配置来对原应用进行改造,hyperf底层会自动生成替换后的代理

发布

  • 如果您有意分享您的插件,您可以把您插件的git仓库发布到https://packagist.org/平台,其它同学可以直接通过composer来安装下载
  • 当然,您也可以直接将代码归档打包,上传到我们的插件市场,来免费(或以有偿的形式)发布到我们的平台