Avatar ·

Importação cíclica em Go: como corrigir o erro "import cycle not allowed"

Olá a todos! Sou novo em Go e me deparei com um problema que não consigo resolver. Estou escrevendo um pequeno aplicativo de gerenciamento de tarefas (to-do list). Tenho dois packages: `models` e `services`. No package `models`, defini a struct `Task` e a função `Validate`, que verifica a correção da tarefa. No package `services`, quero implementar a lógica de adicionar a tarefa ao banco de dados, e antes de salvar, preciso chamar `Validate` de `models`. Aqui está um exemplo de código: **models/task.go:** ```go package models import "errors" type Task struct { ID int Name string } func Validate(t Task) error { if t.Name == "" { return errors.New("name is required") } return nil } ``` **services/task_service.go:** ```go package services import ( "fmt" "myapp/models" ) func AddTask(name string) error { task := models.Task{Name: name} if err := models.Validate(task); err != nil { return err } fmt.Println("T