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
新米エンジニアから見たGo
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yuita
December 14, 2024
320
2
Share
新米エンジニアから見たGo
yuita
December 14, 2024
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
220
Fireside Chat
paigeccino
42
3.9k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
270
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
360
Visualization
eitanlees
150
17k
4 Signs Your Business is Dying
shpigford
187
22k
My Coaching Mixtape
mlcsv
0
97
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
210
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
330
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
97
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
180
Transcript
新米エンジニアから見たGo
自己紹介 ゆいた X:@yuita_0360 株式会社PREVENT(医療系) バックエンドエンジニア(Go、Rails) エンジニア歴1年半弱 Goまともに書き出してから1年くらい
新米エンジニア(Rails勉強してた) から見たGo ※これからGo勉強する人や、ジュニアエンジニアを指導 する立場の人の何かの参考になれば幸いです。
書いてて楽しいというのが一番 ・シンプルな言語な分自分で考えることが多い ・if文もっと読みやすくかけないか。 ・エラーハンドリングやロギングどうしよう。 ・並行処理を上手く使えると気持ちいい ・タイムアウト対策やバックグラウンド処理。 ・テストもGoで書けるのでGoしか書かなくていい ・テストFWみたいなのが無いのは個人的に好き。
管理が楽 ・今のところ後方互換性担保されているので バージョンアップが楽。 ・半年に1回バージョンアップされるのがわかっている。X 見てたら情報が勝手に流れてくる!! ・go fmt
個人的に難しいと思う部分 ・ジェネリクスの上手な使い方 ・そもそもどういうケースで使うのが有用? ・並行処理の使い所の判断 ・必ずしもメリットがあるわけではない。 ・使うとどうしてもコードが複雑になる。 ・変数名問題 ・ローマ字1字とかでいいやつ。 ・使っていいスコープ、ケースの判断、一貫性ぶれがち。
今までやらかした失敗
HTTPクライアントのタイムアウト時間短くしすぎた ・タイムアウト設定して意気揚々とリリースしたらTLSハンドシェイクが設 定時間内に終わらずタイムアウトになった。。。 ※実際のコードではなくサンプルです
マップのキーにtime.Time型の値をそのまま使った https://pkg.go.dev/time#Time ・マップのキーとしてtime.Time型の値を使いたい場合、全てのキーに同 一のLocationが設定されている、かつモノトニッククロックの読み取り値 が取り除かれている必要がある。 たまにやっちゃうスライス初期化周り slice := make([]int, 10)
これにappendしちゃう
今まで読んだおすすめのGo本 ・初めてのGo言語 ・Go言語プログラミングエッセンス ・詳解 Go言語Webアプリケーション開発 ・Go言語100Tips
ご清聴ありがとうございました!