以前少し考えて自己解決して終わったんだけど、 ちょっとしたきっかけがあったのでアウトプットしてみる。 以下のような Person があって、 Hello(), Goodbye() には全く同じ「複雑な処理」がある場合・・・ type Person struct { name string } func (p *Person) Goodbye(input string) { //複雑な処理のつもり fmt.Println("common logic " + input) fmt.Println("goodbye " + p.name) } func (p *Person) Hello(input string) { //複雑な処理のつもり fmt.Println("common logic " + input) fmt.Println("hello " + p.name) } 以前はこれを以