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
770
Goのローカル開発をWorkspacesではじめよう
uhzz
1
950
【Go:パッケージ管理】DepからGo Modulesへ
uhzz
0
1k
コードレビューで泣かないためのintSize = 32 << (^uint(0) >> 63)
uhzz
0
220
「ウチも、gRPC使えますか?」
uhzz
0
280
「インタフェースデザインの心理学」を読んで話したい3つのこと
uhzz
0
21k
「世界一「自由」な会社、NETFLIX NO RULES」を読んでみた
uhzz
0
380
Other Decks in Education
See All in Education
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
2k
人になにかを教えるときに考えていること(2025-05版 / VRC-LT #18)
sksat
4
1k
ANS-C01_2回不合格から合格までの道程
amarelo_n24
1
230
アウトプット0のエンジニアが半年でアウトプットしまくった話 With JAWS-UG
masakiokuda
2
290
今も熱いもの!魂を揺さぶる戦士の儀式:マオリ族のハカ
shubox
0
200
郷土教育モデル事業(香川県小豆島町).pdf
bandg
0
190
OpenAI Education Forum 資料「教育と生成AI ~事例から見えるこれからの活用~」
luiyoshida
2
760
プレゼンテーション実践
takenawa
0
3k
SkimaTalk Tutorial for Corporate Customers
skimatalk
0
280
Linuxのよく使うコマンドを解説
mickey_kubo
1
130
データ分析
takenawa
0
3.1k
Constructing a Custom TeX Ecosystem for Educational Institutions—Beyond Academic Typesetting
doratex
1
7.5k
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Raft: Consensus for Rubyists
vanstee
139
7k
Unsuck your backbone
ammeep
671
58k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Balancing Empowerment & Direction
lara
1
290
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
920
Measuring & Analyzing Core Web Vitals
bluesmoon
7
480
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
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つのテーマについて感じたことを話す機会は貴重 ◦ 理解の助けにもなったし、新しい視点を得ることができた 👍