Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Enablement Bootcampを終えて -Enablement Bootcamp fo...
Search
uhzz
October 12, 2023
Education
380
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Enablement Bootcampを終えて -Enablement Bootcamp for Gopherizing 〜業務で使えるGoを学ぼう〜
uhzz
October 12, 2023
More Decks by uhzz
See All by uhzz
DI コンテナ自動生成ツールを実装してみた / intro-autodi
uhzz
0
1k
Goで実現するGraceful Shutdown ~実運用での課題と解決策~ / Go Conference 2025
uhzz
2
2.1k
MCP調べてみました! / Exploring MCP
uhzz
2
4.2k
自動生成されたhttpエンドポイントごとにカスタムミドルウェアを挿入したい話
uhzz
1
3.1k
安全にQAを行える環境が整いました!- Kyash TechTalk #6 - Kyashの開発をチラ見せ
uhzz
0
910
Goのローカル開発をWorkspacesではじめよう
uhzz
1
1.2k
【Go:パッケージ管理】DepからGo Modulesへ
uhzz
0
1.2k
コードレビューで泣かないためのintSize = 32 << (^uint(0) >> 63)
uhzz
0
290
「ウチも、gRPC使えますか?」
uhzz
0
360
Other Decks in Education
See All in Education
The Dirty Dozen: 12 gala mistakes you don’t know you’re making
auctria
PRO
0
250
生成AIとの付き合い方/ How to work with AI
kaityo256
PRO
3
1k
SANG PENCIPTA BERBICARA (01ABSG-Q4-2026)
ssmedikasda
0
550
Book-keeping
bvr7352
0
150
Liburd and Stoll Farrell "Copyright Essentials From A to AI: A 2026 NISO Training Series, Session Two: Fair Use and the Public Domain"
baltimoreniso
0
110
Liburd and Stoll Farrell "Copyright Essentials From A to AI: A 2026 NISO Training Series, Session Five: Open Movements & Author Rights"
baltimoreniso
0
110
検定資格の価値 ~実はすごいよQC検定~
bunnchinn3
0
280
AI活用の基礎体験ハンズオン(松尾研 AXエバンジェリスト講座)
minorun365
PRO
12
15k
[2026後期火5] 論理学(京都大学文学部 後期 第1回)「名前はあるのに、誰なのかわからない」
yatabe
0
180
[2026後期火5] 論理学(京都大学文学部 後期 第2回)「量化子の導入」
yatabe
0
230
Session 4 - Teknik Lobby dan Negosiasi
adeputra13
0
650
DRUGS ACTING ON THE PERIPHERAL NERVOUS SYSTEM
pawan_pharm
0
230
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
760
Everyday Curiosity
cassininazir
0
390
The Pragmatic Product Professional
lauravandoore
37
7.5k
Navigating Team Friction
lara
192
16k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Curious Case for Waylosing
cassininazir
1
610
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
520
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
320
Evolving SEO for Evolving Search Engines
ryanjones
0
360
Mind Mapping
helmedeiros
1
430
A designer walks into a library…
pauljervisheath
211
25k
Music & Morning Musume
bryan
48
7.5k
Transcript
Enablement Bootcampを終えて Enablement Bootcamp for Gopherizing 〜業務で使えるGoを学ぼう〜 @_uhzz_
目次 • 参加したきっかけ・モチベーション • トレーニングの所感と発見 ◦ Day1: Go らしいコードの書き方 ◦
Day2: テスタブルなコードの書き方 ◦ Day3: 実践的なエラー処理 ◦ Day4: gRPC をつかった API サーバの作成 • トレーニングを経て
参加したきっかけ・モチベーション # きっかけ • ナレッジワーク社の note を読んでブートキャンプに興味をもった ◦ 「何をどう学ぶか」というところが気になって参加してみたくなった ◦
申し込み課題があったので、腕試しをしてみたかった # 私のバックグラウンド • 業務でGoをつかっている ◦ Go らしい書き方やテストについても普段の開発を通して知っている(つもり) # モチベーション • 基礎力をさらに高める機会にするぞ👍
Day1: Go らしいコードの書き方 # 所感 • Go らしいとはなにか、Goらしいコードを実践的に書くにはどうすればいいかの指針 を学んだ #
再発見 • 月末とか年末の忙しいときでも読める言語、それが Go ◦ 技巧を凝らすことを減らしているの意 • 言語仕様の解像度を高めろ ◦ トレーニング中に何度か話に出てきたので、必須事項だと心で理解した ◦ おすすめの学習方法を聞かれたときにも薦めやすい • 命名が上手くいくのはいいこと ◦ 命名が長くなってしまう場合など上手くいかないときは、なにかがよろしくない
Day2: テスタブルなコードの書き方 # 所感 • ユニットテストの考え方と、Go でテストを書く際のポイントやテクニックを学んだ # 再発見 •
ユニットテストは最初のユーザー ◦ テストは品質保証、リファクタリング、ドキュメントを目的とする • 公開されているものがちゃんと動くことが大事 ◦ privateメソッドも、やりすぎるとリファクタリングが大変になる • テーブル駆動テストの醍醐味はケースとロジックの分離
Day3: 実践的なエラー処理 # 所感 • スタックトレースの考え方から、どのエラーをどうやって、誰に知らせるかといった本 質的なエラーの考え方を学んだ # 発見 •
Typed-nil 問題を初めて知った ◦ https://zenn.dev/nobonobo/articles/f554041aea1955 ◦ linter に助けられていたことに気づいた • 標準パッケージのruntime.Stack() が本体であることを初めて知った ◦ runtime/debug.Stack()は、runtime.Stack() をラップしていることを知れた
Day4: gRPC をつかった API サーバの作成 # 所感 • gRPC のフレームワーク
connect をつかったチュートリアルを通して、gRPC 開発 をスピーディーに行える気づきを得た # 発見 • net/http のエコシステムが使えるのは知らなかった!便利! # グループワーク • モブプロを通して、ワイワイ1つのエンドポイントを作れたのはよかった
トレーニングを経て # 所感 • 再発見をしたり、今まで知らずにいた問題に気づく機会になった • 改めて、基礎力を上げる必要性を感じた ◦ 言語仕様を押さえておくことの必要性について、実感を得た ◦
正しい知識をもって開発に取り組むということについて学べた • チームで、1つのテーマについて感じたことを話す機会は貴重 ◦ 理解の助けにもなったし、新しい視点を得ることができた 👍