Go 1.21.0 がリリースされた
予定通り8月に Go 1.21.0 がリリースされた。
- Go 1.21.0 is released
- Go 1.21 Release Notes - The Go Programming Language
- Go 1.21 is released! - The Go Programming Language
お気づきだろうか。 今回のバージョン番号は 1.21 ではなく 1.21.0 なのですよ。 これからは2月8月の初期リリースでも後ろにちゃんと 1.xx.0 って付けるんだってさ。 これで Go の機械的なバージョン管理がしやすくなると思う。
Windows 7, 8, Server 2008, Server 2012 サポート終了のお知らせ
1.21 からは Windows 10 および Windows Server 2016 が最低要件となる。 それより前の Windows バージョンに対応するには 1.20 系が必要。 それでも2024年2月でサポートが終わるんだよな。
log/slog パッケージ
個人的に最大のトピックはこれ。
log/slog
構造化ログパッケージが追加されたこと。
これでサードパーティの logger も log/slog
パッケージの下に統合されることを期待したい。
ログなんて「詳細」ですよ。 偉い人には分からんのです。
min/max 組み込み関数
多分,他の言語の人には「今までなかったんかい!」ってツッコまれるんだろうなぁ。 マジでなかったんスよ。 つか,いわゆる Generics が導入されてようやく実現したというか。
slices, maps, cmp パッケージ
slices
, maps
, cmp
各パッケージの追加も Generics 導入の恩恵だよね。
何せ,今までは配列要素の反転(reverse)でさえ自前で
てな感じに書いてたんだぜ。 クールだろ(笑)
こうやって Go の標準ライブラリのイケてないところが徐々に解消されていくといいねぇ。
math/rand/v2
のプロポーザルとか見てても,着々と Go 2 に進んでる気がする。
例によって…
Ubuntu の APT で管理している Go コンパイラは古いので,ダウンロードページからバイナリ(go1.21.0.linux-amd64.tar.gz
)を取ってきてインストールすることを強く推奨する。
以下は完全手動での作業例。
$ cd /usr/local/src
$ sudo curl -L "https://go.dev/dl/go1.21.0.linux-amd64.tar.gz" -O
$ cd ..
$ sudo unlink go # 以前の Go が入っている場合
$ sudo tar xvf src/go1.21.0.linux-amd64.tar.gz
$ sudo mv go go1.21.0
$ sudo ln -s go1.21.0 go
$ go version # /usr/local/go/bin にパスが通っている場合
go version go1.21.0 linux/amd64
Windows は Scoop 経由で OK
複数バージョンの Go コンパイラを扱いたい場合は
$ go install golang.org/dl/go1.21.0@latest
$ go1.21.0 download
$ go1.21.0 version
go version go1.21.0 linux/amd64
てな感じで導入できる。
アップデートは計画的に。
ブックマーク
(随時追加予定)
参考図書
- プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
- Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
- 丸善出版 2016-06-20
- 単行本(ソフトカバー)
- 4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
- 評価
著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。
- 初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド
- Jon Bodner (著), 武舎 広幸 (翻訳)
- オライリージャパン 2022-09-26
- 単行本(ソフトカバー)
- 4814400047 (ASIN), 9784814400041 (EAN), 4814400047 (ISBN)
- 評価
2021年に出た “Learning Go” の邦訳版。私は版元で PDF 版を購入。 Go 特有の語法(idiom)を切り口として Go の機能やパッケージを解説している。 Go 1.19 対応。
- 実用 Go言語 ―システム開発の現場で知っておきたいアドバイス
- 渋川 よしき (著), 辻 大志郎 (著), 真野 隼記 (著)
- オライリージャパン 2022-04-22
- 単行本(ソフトカバー)
- 4873119693 (ASIN), 9784873119694 (EAN), 4873119693 (ISBN)
- 評価
版元のデジタル版を購入。 Go で躓きやすい点を解説していくのが最初の動機らしい。「◯◯するには」を調べる際にこの本を調べるといいかも。
- Go言語による並行処理
- Katherine Cox-Buday (著), 山口 能迪 (翻訳)
- オライリージャパン 2018-10-26
- 単行本(ソフトカバー)
- 4873118468 (ASIN), 9784873118468 (EAN), 4873118468 (ISBN)
- 評価
- Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築
- Travis Jeffery (著), 柴田 芳樹 (翻訳)
- オライリージャパン 2022-08-03
- 単行本(ソフトカバー)
- 4873119979 (ASIN), 9784873119977 (EAN), 4873119979 (ISBN)
- 評価
- Goならわかるシステムプログラミング 第2版
- 渋川よしき (著), ごっちん (イラスト)
- ラムダノート 2022-03-23
- 単行本(ソフトカバー)
- 4908686122 (ASIN), 9784908686122 (EAN), 4908686122 (ISBN)
- 評価
- デベロッパーゴースーパーゴラン Tシャツ
- Geek Go Super Golang Tees
- ウェア&シューズ
- B09C2XBC2F (ASIN)
- 評価
ついカッとなってポチった。反省はしない