アドベントカレンダーにはかけない程度のメモです。
ありそうで中々ない日本語による変数名ですが、個人的には日本人のみのチームなら有りだと思っています。
利点は圧倒的な可読性。
さらに英語圏の人へは難読化になると言う特典付き・・・如何でしょうか。
package main
import "fmt"
type 魔法少女 struct {
まどか string
ほむら string
}
func にゅー魔法少女() *魔法少女{
return &魔法少女{
まどか: "魔法少女まどか",
ほむら: "魔法少女ほむら",
}
}
type 話数 struct {
回 int
}
func(話 *話数)マミったかな(){
if 話.回 >= 3 {
fmt.Println("マミった")
} else {
fmt.Println("マミってない")
}
}
type 契約しようよ string
func main() {
まほうしょうじょ := にゅー魔法少女()
fmt.Println(まほうしょうじょ.まどか) //=> 魔法少女まどか
fmt.Println(まほうしょうじょ.ほむら) //=> 魔法少女ほむら
夢の中で逢ったような := new(話数)
夢の中で逢ったような.回 = 1
もう何も怖くない := new(話数)
もう何も怖くない.回 = 3
夢の中で逢ったような.マミったかな() //=> マミってない
もう何も怖くない.マミったかな() //=> マミった
まどかちゃんへ := make(chan 契約しようよ, 5)
go func(){
まどかちゃんへ <- "僕と契約して魔法少女になってよ!"
まどかちゃんへ <- "僕と契約して魔法少女になってよ!"
まどかちゃんへ <- "僕と契約して魔法少女になってよ!"
まどかちゃんへ <- "僕と契約して魔法少女になってよ!"
まどかちゃんへ <- "その必要はないわ。"
close(まどかちゃんへ)
}()
for やあまどか := range まどかちゃんへ{
fmt.Println(やあまどか)
/* =>僕と契約して魔法少女になってよ!
僕と契約して魔法少女になってよ!
僕と契約して魔法少女になってよ!
僕と契約して魔法少女になってよ!
その必要はないわ。*/
}
}