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
jollyjoester
April 23, 2017
Programming
0
610
Go合宿進捗ありません
Go合宿@土善旅館でのLT
jollyjoester
April 23, 2017
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
市民のためのセキュリティ講座
jollyjoester
0
28
コミュニティMTG in WWDC24
jollyjoester
0
290
BengaluruでLTしてきた
jollyjoester
0
330
try! Swift Tokyo 2024
jollyjoester
0
320
エンジニアが直接会う場の価値について
jollyjoester
8
4.3k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
350
My favorite sessions in WWDC 23
jollyjoester
0
640
みんなでAIと戯れよう
jollyjoester
0
150
続く勉強会の作り方
jollyjoester
2
860
Other Decks in Programming
See All in Programming
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
生成AI時代のコンポーネントライブラリの作り方
touyou
1
220
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
820
A2A プロトコルを試してみる
azukiazusa1
2
1.4k
Team operations that are not burdened by SRE
kazatohiei
1
310
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
120
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
770
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
340
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
170
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
760
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
530
Deep Dive into ~/.claude/projects
hiragram
14
2.6k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Producing Creativity
orderedlist
PRO
346
40k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Code Reviewing Like a Champion
maltzj
524
40k
How STYLIGHT went responsive
nonsquared
100
5.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Statistics for Hackers
jakevdp
799
220k
Transcript
2017/04/23 jollyjoester Go߹॓ ਐḿ͋Γ·ͤΜ
ࣗݾհ
• ࣣౡҒ೭(@jollyjoester) • Repro Inc. • ͯ͢ख़ / Kanpai-er •
ೖऀ͚iOSΞϓϦ։ൃຊॻ͍ͨ Coming Soon
SwiftѪձ • Swift͖͕ू·ͬͯΘ͍Θ͍ʰָ͠Ήձʱ • Ϩϕϧɺܦݧෆ ‣ Swift͕͖ͳਓʂ ‣ SwiftΛ͖ʹͳΔ༧ఆͷਓ ‣
Ή͠ΖSwift͔Β͔Ε͍ͯΔਓ • ݄̍։࠵ඪ ‣ ฏɿஊٛ ‣ ٳɿٱ͘͘ձʴஊٛ ࣍ճ4/28
ࢲͷGoܦྺ • ॳΊ͔ͯΒগͳ͘ͱ542 ɹ ɹ ɹ ɹ
ࢲͷGoܦྺ • ॳΊ͔ͯΒগͳ͘ͱ542 • ࣮࣭ͬͨͷ3 ɹ ɹ ɹ
ࢲͷGoܦྺ • ॳΊ͔ͯΒগͳ͘ͱ542 • ࣮࣭ͬͨͷ3 • υοτΠϯετʔϧʢ542લʣ ɹ ɹ
ࢲͷGoܦྺ • ॳΊ͔ͯΒগͳ͘ͱ542 • ࣮࣭ͬͨͷ3 • υοτΠϯετʔϧʢ542લʣ • Goೖऀ͚ϋϯζΦϯʢڈͷͲ͔͜ʣ ɹ
ࢲͷGoܦྺ • ॳΊ͔ͯΒগͳ͘ͱ542 • ࣮࣭ͬͨͷ3 • υοτΠϯετʔϧʢ542લʣ • Goೖऀ͚ϋϯζΦϯʢڈͷͲ͔͜ʣ •
Go߹॓ʂ
ࠓճͷࢥ ʮA Tour of GoͰͪΌͪΌͬͱͬͯͳΜ͔ͷΞϓϦ έʔγϣϯ࡞Δͧʂʯ
ɹ݁Ռ
ɹ݁Ռ ਐḿ͋Γ·ͤΜ
A Tour of Goܦա • ࠷ॳʹ্ా͞ΜͷΛฉ͘ʢΔؾˢʣ • A Tour of
GoΛ࢝ΊΔʢΔؾˢʣ • ͍ͭ·ͰܦͬͯऴΘΒͳ͍ʢΔؾˢʁʣ • ͩΜͩΜͭ·ͮ͘͜ͱ͕ଟ͘ͳ͖ͬͯͨʢΔؾˣʁʣ • શମͷϘϦϡʔϜݟͯΈͨʢΔؾˣʣ ʢstructʹϝιουੜ͢ͱ͜·Ͱ͔͠ߦ͚ͳ͔ͬͨʣ
A Tour of Go ͭ·͖ͮϙΠϯτ̍ • Capacity is Կʁ
A Tour of Go ͭ·͖ͮϙΠϯτ̍ • range is Կʁ
A Tour of Go ͭ·͖ͮϙΠϯτ̍ • deferͷείʔϓ
ܾஅ ϐϘοτ͢Δͧʢಀ͛ͨʣ
࣍ͷ࡞ઓ • จ๏ͱ͔Θ͔Βͳͯ͘ಈ͘ͷ͕͋Ε͍͍ • ʮKamiʯͬͯͷΛ࡞ͬͨਓ͕ࢀՃऀʹ͍ΔΒ͍͠ͷͰΈ ͯΈΔ͔ • ʢ࠷ѱ࡞ऀ͔Β̍ථ͍͖ͨͩͩʣ
Kami৮ͬͯΈͨ • Web framework with context • https://github.com/guregu/kami
Kami৮ͬͯΈͨ
Kamiಈ͍ͨ
Ҏ্
ͬ͞ͺΓΘ͔ΒΜ
ͱ͍͑ ֶΜͩ͜ͱ • contextύοέʔδ is Կ • Middleware is Կ
• net/httpΕΑ
contextύοέʔδ • ϦΫΤετͷΩϟϯηϧͱλΠϜΞτͱϦΫΤετε ίʔϓͷมΛѻ͏ͷ • Go 1.7͔Βຊମʹ౷߹ • *http.Requestʹcontextؔ࿈ͷϝιου͕Ճ͞Εͨ •
Kami͜Ε͕ग़ΔલʹcontextΛѻ͍͔ͨͬͨ
Middleware is Կʁ • ΞϓϦέʔγϣϯͷϝΠϯϩδοΫͷલޙʹڬΉॲཧ • ʢLaravelͱ͔Ͱݟ͔͚ͨݴ༿ͳͷͰ࠷ۙͷαʔόʔα ΠυͰී௨ͷ֓೦ʁʣ
Goͷnet/httpڧྗ ͱΓ͋͑ͣnet/httpΛͬͯΈͳΕ
ͬͯ@guregu͞Μ͕ݴͬͯͨ
ࢀߟࢿྉ • https://github.com/guregu/kami#usage • http://go-talks.appspot.com/github.com/guregu/ slides/kami/kami.slide#1 • https://blog.golang.org/context
Always See Everything
Thank you!