Go Sueyoshi a.k.a sue445
2015/12/06 Go Conference 2015 Winter
(兼 プリキュアAdventCalendar 7日目)
日曜朝8:30からテレビ朝日系で放映しているアニメ
「Go!プリンセスプリキュア」のgolang実装です
go get github.com/sue445/goprecure
import github.com/sue445/goprecure
// キュアフローラ
flora := goprecure.NewCureFlora()
// キュアマーメイド
mermaid := goprecure.NewCureMermaid()
// キュアトゥインクル
twinkle := goprecure.NewCureTwinkle()
// キュアスカーレット
scarlett := goprecure.NewCureScarlett()
flora := goprecure.NewCureFlora()
flora.Name()
// 春野はるか
flora.Name()
// 春野はるか
flora.Transform()
flora.Name()
// キュアフローラ
// キュアフローラ
g.DressupKeys = []DressupKey{Flora, Rose, Lily, Sakura, Royal}
// キュアマーメイド
g.DressupKeys = []DressupKey{Mermaid, Ice, Bobble, Sango, Royal}
// キュアトゥインクル
g.DressupKeys = []DressupKey{Twinkle, Luna, ShootingStar, Ginga, Royal}
// キュアスカーレット
g.DressupKeys = []DressupKey{Scarlett, Hanabi, Phoenix, Sun, Royal}
Transform
の後に Exchange
すると Exchange
の標準出力だけ出してほしいのに直前の Transform
のも一緒に出るので邪魔
golangのREPLがまだGoPrecureに追いついていない感があるw
method_missing
でymlに飛ばすとかtransform!
(変身) や attack!
(必殺技) など破壊的メソッドには !
をつけるRubyの慣習に則ったDresupKey
という型を const
で定義することにより Exchange
に未知のドレスアップキーが引数がわたらないようにした(コンパイルエラーになる)新しい言語を勉強する時は自分の好きなものを実装すると良い。