gone/README_CN.md
dapeng 671e8efd60
Some checks failed
Test and coverage / build (1.21.x) (push) Has been cancelled
Test and coverage / build (1.22.x) (push) Has been cancelled
Test and coverage / build (1.23.x) (push) Has been cancelled
feat: update readme, and add example of simple-web
2024-11-25 22:22:01 +08:00

4.1 KiB
Raw Permalink Blame History

English  |  中文

license GoDoc Go Report Card codecov Build and Test Release Mentioned in Awesome Go

logo

Gone

Gone 是什么?

Gone 是一个轻量级的golang依赖注入框架并且适配了一些列第三方组件用于快速开始编写一个云原生的微服务。

特性

  • 依赖注入,支持对结构体属性和函数参数自动注入
  • Gonectr,生成项目、生成辅助代码、编译和启动项目
  • 单元测试方案基于接口的mock测试
  • 多种组件,可插拔,支持云原生、微服务
architecture

快速开始

  1. 安装 gonectrmockgen
    go install github.com/gone-io/gonectr@latest
    go install go.uber.org/mock/mockgen@latest
    
  2. 创建一个项目
    gonectr create myproject
    
  3. 运行项目
    cd myproject
    gonectr run ./cmd/server
    
    或者使用make命令运行如果你已经安装make:
    cd myproject
    make run
    
    或者使用docker compose来运行:
    cd myproject
    docker compose build
    docker compose up
    

📚完整文档

更新记录

v1.2.1

  • 定义 gone.Provider,一个工厂函数用于将 不是 Goner 的外部组件(结构体、结构体指针、函数、接口)注入到 属性需要注入的Goner
  • 修复 gone.NewProviderPriest 无法为 生成接口类型的gone.Provider生成Priest;
  • goner/gorm编写测试代码,补齐其他测试代码;文档更新。

v1.2.0

  • 提供一种新的 gone.GonerOption,可以将按类型注入,将构造注入类型实例的任务代理给一个实现了Suck(conf string, v reflect.Value, field reflect.StructField) errorGoner
  • 提供了一个用于实现Goner Provider的辅助函数:func NewProviderPriest[T any, P any](fn func(tagConf string, param P) (T, error)) Priest
  • goner/xorm 集群模式提供策略配置的方案;
  • 完善goner/gorm代码 和 做功能测试,支持多种数据库的接入。

v1.1.1

  • goner/xorm 支持集群 和 多数据库,最新文档:https://goner.fun/zh/references/xorm.html
  • 新增 goner/gorm封装gorm.io/gorm用于数据库的访问暂时只支持mysql完善中...

贡献

如果您发现了错误或有功能请求,可以随时提交问题,同时欢迎提交拉取请求

联系方式

如果您有任何问题,欢迎通过以下方式联系我们:

许可证

gone 在 MIT 许可证下发布,详情请参阅 LICENSE 文件。