Вопрос: Как сделать custom type (type alias vs defined type) и зачем это нужно?

Go Junior Без компании
Вопрос: Как сделать custom type (type alias vs defined type) и зачем это нужно?
Ответы
type T = U — alias (тот же тип). type T U — новый определённый тип на базе U. ```go package main import "fmt" type ID = int // alias type UserID int // defined type func main() { var a ID = 10 var b UserID = 10 fmt.Println(a, b) // a = b // нельзя, разные типы a = int(b) // нужен каст } ``` Defined type полезен для доменной модели и type-safety.