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
Enablement Bootcampを終えて -Enablement Bootcamp fo...
Search
uhzz
October 12, 2023
Education
0
290
Enablement Bootcampを終えて -Enablement Bootcamp for Gopherizing 〜業務で使えるGoを学ぼう〜
uhzz
October 12, 2023
Tweet
Share
More Decks by uhzz
See All by uhzz
MCP調べてみました! / Exploring MCP
uhzz
2
2.4k
自動生成されたhttpエンドポイントごとにカスタムミドルウェアを挿入したい話
uhzz
1
2.4k
安全にQAを行える環境が整いました!- Kyash TechTalk #6 - Kyashの開発をチラ見せ
uhzz
0
780
Goのローカル開発をWorkspacesではじめよう
uhzz
1
960
【Go:パッケージ管理】DepからGo Modulesへ
uhzz
0
1k
コードレビューで泣かないためのintSize = 32 << (^uint(0) >> 63)
uhzz
0
230
「ウチも、gRPC使えますか?」
uhzz
0
290
「インタフェースデザインの心理学」を読んで話したい3つのこと
uhzz
0
21k
「世界一「自由」な会社、NETFLIX NO RULES」を読んでみた
uhzz
0
390
Other Decks in Education
See All in Education
Webリテラシー基礎
takenawa
0
7.3k
生成AIとの上手な付き合い方【公開版】/ How to Get Along Well with Generative AI (Public Version)
handlename
0
500
i-GIP 2025 中高生のみなさんへ資料
202200
0
500
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
2k
Data Physicalisation - Lecture 9 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
450
JPCERTから始まる草の根活動~セキュリティ文化醸成のためのアクション~
masakiokuda
0
190
Virtual and Augmented Reality - Lecture 8 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.7k
Tangible, Embedded and Embodied Interaction - Lecture 7 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.7k
Common STIs in London: Symptoms, Risks & Prevention
medicaldental
0
130
Info Session MSc Computer Science & MSc Applied Informatics
signer
PRO
0
190
マネジメント「される側」 こそ覚悟を決めろ
nao_randd
10
5.4k
AIの時代こそ、考える知的学習術
yum3
2
180
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Site-Speed That Sticks
csswizardry
10
690
Scaling GitHub
holman
460
140k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Gamification - CAS2011
davidbonilla
81
5.4k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Thoughts on Productivity
jonyablonski
69
4.7k
Writing Fast Ruby
sferik
628
62k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
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つのテーマについて感じたことを話す機会は貴重 ◦ 理解の助けにもなったし、新しい視点を得ることができた 👍