2023/8/9にリリースされたGo1.21 新たに導入されたツールチェーン(Go Toolchains) 次の内容を知ってもらい、Toolchainを使いこなせるようになること ・導入が必要となった背景 ・導入で期待されること ・具体的にはどう使うのか ・どんな挙動なのか
これはサマリ(ここを更新していきます)情報提供(コメント)歓迎!! イテレータによってGoはどう変わるのか Dive into gomock Data Race Detection In Go From Beginners Eye Go1.21から導入されたGo Toolchainの仕組みをまるっと解説 Cleanup handling in Go Custom logging with slog: Making Logging Fun Again! Goにconst型修飾を期待しなくてよい理由 GoのLanguage Server Protocol実装、「gopls」の自動補完の仕組みを学ぶ バイナリを眺めてわかる gob encoding の仕様と性質、適切な使い方 Unified Diff 形式の差分から Go AST を構築して feature flag を自動計装する Mapのパ
Go1.22から(プレビューはGo1.21から)ループ変数のメモリ共有問題が解消されたことは皆様よくご存知かと思います。 cf. Fixing For Loops in Go 1.22 それではもう1歩踏み込んで、ループ変数がイテレーション毎に異なるインスタンスになるのはどのような時でしょうか?以下2つの出力が異なる理由をどう説明できるでしょうか? for i := range 3 { fmt.Print(&i) // [0x14000112018, 0x14000112030, 0x14000112038] // 異なるアドレス } for i := range 3 { print(&i) // [0x1400010af18, 0x1400010af18, 0x1400010af18] // 同じアドレス } 新しいループとそれを取り巻くツールの実装は、既存コードでバグを生み出さない・パ
An abstract vision of abstracting database/sql boilerplateIntroductionThis post is part of the Eureka Advent Calendar 2022. database/sql provides everything needed to work with SQL in Go, yet there’s an ever-growing list of query builders, ORMs and database utilities being developed by the community. Is database/sql really so bad? In this post we’ll explore what can be achieved using Go generics w
Go Conference 2024に参加し、登壇してきました。 登壇しました Dive into gomockというタイトルで発表しました。2トラックのどちらかで40分トークかな? と思っていたら2部屋ぶち抜きでトークだったのでビビっていました。 発表資料はこちらです。 speakerdeck.com gomockの内部実装を見て、なぜライブラリの内部実装を見るのがよいことなのか、という話をしました。reflectパッケージが好きなので合間にreflectパッケージの話もしています。つまり主題が3つあるわけですね。 gomockの内部実装を見よう リフレクションを知ろう なぜライブラリの内部実装を見るのか知ろう 今回はgomockの実装を掘り下げることで、魔法のように見えるイディオムの裏にある処理を知ろう、という方向性でやりました。今回の発表でgomockの内部実装を全員が完全理解できた
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く