IOC-golangGo 语言依赖注入框架

联合创作 · 2023-09-30 06:51

IOC-golang 是一款强大的 Go 语言依赖注入框架,提供了一套完善的 IoC 容器。其能力如下:

  • 依赖注入

    支持任何结构、接口的依赖注入,具备完善的对象生命周期管理机制。

    可以接管对象的创建、参数注入、工厂方法、参数来源等等,并拥有可扩展性。

  • 接口代理

    基于 AOP 的思路,为由框架接管的对象提供默认的接口代理层,在面向接口编程的情景下,可以在 业务无侵入 的前提下,使用基于结构代理 AOP 层扩展的丰富运维能力。例如接口查询,参数动态监听,方法粒度链路追踪,性能瓶颈分析,分布式场景下全链路方法粒度追踪等。

    • 监控
    • 日志采集
    • 链路追踪
    • 事务能力
  • 代码生成能力

    我们提供了代码生成工具,开发者可以通过注解的方式标注结构,从而便捷地生成结构注册代码、结构代理、结构专属接口等。

  • 可扩展能力

    支持被注入结构的扩展、自动装载模型的扩展、调试 AOP 层的扩展。

  • 丰富的预置组件

    提供覆盖主流中间件的预制对象,方便直接注入使用。

项目结构

  • aop: 结构代理 AOP 模块:提供 AOP 层的基础能力,和可扩展API。
  • autowire: 提供依赖注入内核,以及单例模型、多例模型两种基本自动装载模型
  • config: 配置加载模块,负责解析框架配置文件。
  • extension: 组件扩展:提供基于多个领域模型的的预置实现结构,比如缓存、数据库、消息。
  • example: 示例
  • iocli: 代码生成/程序调试 工具
浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报