Skip to content

IoC - 控制反转容器

IoC 提供依赖注入和控制反转功能。

特性

  • 依赖注入
  • 服务注册
  • 生命周期管理
  • 接口绑定

安装

bash
go get github.com/o-zoox/container

快速开始

基本使用

go
package main

import (
    "fmt"
    "github.com/o-zoox/container"
)

type UserService interface {
    GetUser(id int) string
}

type userService struct{}

func (s *userService) GetUser(id int) string {
    return fmt.Sprintf("User %d", id)
}

func main() {
    c := container.New()
    
    // 注册服务
    c.Bind(func() UserService {
        return &userService{}
    })
    
    // 解析服务
    var service UserService
    c.Resolve(&service)
    
    fmt.Println(service.GetUser(1))
}

更多信息

基于 VitePress 构建