Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GoConnect#9 2025.08.19
Search
o-ga
August 19, 2025
0
69
GoConnect#9 2025.08.19
o-ga
August 19, 2025
Tweet
Share
More Decks by o-ga
See All by o-ga
kanazawa.go 2025.07.27
tabe
0
57
ランドネットLT会.pdf
tabe
0
11
Tavinikkiyとかいう構想半年、開発2ヶ月みたいなプロダクトを個人開発している話
tabe
0
9
テテミート 2024.11.22
tabe
0
11
Genericsについて改めて学んでみた
tabe
0
49
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
My Coaching Mixtape
mlcsv
0
48
Site-Speed That Sticks
csswizardry
13
1.1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
220
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
A designer walks into a library…
pauljervisheath
210
24k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
55
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Transcript
Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい
Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい Go で日付を扱いたい Go Connect LT 2025年8月19日 1
自己紹介 自己紹介 自己紹介 自己紹介 自己紹介 自己紹介 自己紹介 自己紹介 自己紹介 自己紹介
名前: オーガ 職業: バックエンドエンジニア 好きな言語: Go, TypeScript 趣味: ハイキュー!!オタク、ライブに行く、日本酒、Go を書く 推し: 山本彩、福山梨乃 Twitter: @o_ga09 GitHub: @o-ga09 2
今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと 今日話すこと
Go で1ヶ月後の計算どうしよ? 標準パッケージの挙動 上手いことやってくれるライブラリはあるか? で、結局どうしたか? まとめ 3
Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ?
Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? Go で1ヶ月後の計算どうしよ? ん?これバグりそうとなったのは、 契約関係で1ヶ月後を自動計算して返す API 普通に time.AddDate していた 月末を考慮されていなくね? 4
標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動 標準パッケージの挙動
time.AddDate の N ヶ月後を算出する際の挙動 例:元の日付:2025/8/19 → 1 ヶ月後 → 2025/9/19 OK 例:元の日付:2025/8/31 → 1 ヶ月後 → 2025/10/01 おっ? 9 月に 31 日はない! 2025/9/30 が欲しいなぁ〜 このように Go の標準パッケージの time パッケージは、自然なカレンダーの挙 動に従う! 参考:func (Time) AddDate 5
上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある 上手いことやってくれるライブラリはある
か? か? か? か? か? か? か? か? か? か? jinzhu/now kokardy/jpholiday hardfinhq/go-date 6
jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now jinzhu/now
現在時刻から前か後か、月末か月初か、N ヶ月後はいつかのように現在時刻(now)を基 準になっている うーーん、微妙に使い心地が悪いかも? 7
kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday kokardy/jpholiday
祝日特化ライブラリ これはこれで便利そうなライブラリ見つけた うーーん、違うだろ!!! 8
hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date hardfinhq/go-date
なんか、いい感じ! 使いたい!!! ・・・time パッケージのラッパーか? 9
・・・あるといえば、あるがどれも、用途が違うかも・・・ 10
で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか? で、結局どうしたか?
愚直に自前実装!!! 11
まとめ まとめ まとめ まとめ まとめ まとめ まとめ まとめ まとめ まとめ
なんか、js の date-fns 的なのを期待してたのになかった・・・ (ピエン) なんか、調べてたら、気をつけろ的な記事がいっぱいだった 結局、pkg 配下に自前実装になってしまった 契約とか請求関係で API 実装したことある方いれば、どうしたか教えてください!!! 12
Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました
Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました Go 清聴ありがとうございました 13