Goには既存の型に新しい名前をつける方法が2つある。 type MyType intと宣言するDefined type 以前はNamed typeと言っていたが、Go1.11からDefined typeと呼ぶようになった type MyType = intと宣言するType alias すでにいろいろ記事はあるものの、最近数回聞かれることがあったので改めてまとめておく。 Tl;DR Goには型に違う名前をつける方法がある。 Defined typeとType alias Defined typeを使うと完全に違う型として扱える プリミティブな型に異なる型名をつけたり、メソッドを生やすこともできる Value Object的な型を簡単に作ることができる Go1.10以前(書籍プログラミング言語Goなど)ではNamed typeと呼ばれている Type aliasを使うと異なる名前だが同じ型と
![[Go] Defined type(Named type)とType aliasを使い分ける - My External Storage](https://cdn-ak-scissors.b.st-hatena.com/image/square/f3ca5145f819bb37539bafba90f1c2353dbe1f00/height=288;version=1;width=512/https%3A%2F%2Fbudougumi0617.github.io%2Flogos%2FGo-Logo_Aqua.png)