Golang 初心者 Code Reading #1
イベント内容
Golang 初心者 Code Reading
goの有名packageのsource codeをみんなで読みながら、goの理解を深めていく会です。 第一回はgo-playground/validatorを対象にします。(https://github.com/go-playground/validator/tree/v8.18.2) goの文法やstandard libraryを一通り触ったので、実践的なcodeを読んでみたい方々を対象にしています。
validatorとは
package main import ( "fmt" "gopkg.in/go-playground/validator.v8" ) type Item struct { Name string `validate:"required"` Number int `validate:"gt=100"` } func main() { v := validator.New(&validator.Config{TagName: "validate"}) items := []Item{ {"A", 200}, {"", 200}, {"C", 10}, } for i, _ := range items { if err := v.Struct(&items[i]); err != nil { fmt.Println(err) } } // Key: 'Item.Name' Error:Field validation for 'Name' failed on the 'required' tag // Key: 'Item.Number' Error:Field validation for 'Number' failed on the 'gt' tag }
validatorはstructのtagにvalidateの条件を書いておくことで、validation処理を提供してくれるpackageです。goでどのようにこの機能を提供しているのかをみていきたいと思っています。
お願い
Go Community Code of Conduct に則って進めていきたいと思っています。
当日用の参照
sample code https://github.com/ymgyt/golang-code-reading-event/tree/master/events/20181114
feed back https://docs.google.com/forms/d/e/1FAIpQLSfzRXdBL3hECDBeN0QPO4_LW5iNz9QuCer3aEa44UKbMNKNyg/viewform
注意事項
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。