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
AIコードアシスタントとiOS開発
jollyjoester
1
270
市民のためのセキュリティ講座
jollyjoester
0
37
コミュニティMTG in WWDC24
jollyjoester
0
300
BengaluruでLTしてきた
jollyjoester
0
340
try! Swift Tokyo 2024
jollyjoester
0
330
エンジニアが直接会う場の価値について
jollyjoester
8
4.4k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
360
My favorite sessions in WWDC 23
jollyjoester
0
650
みんなでAIと戯れよう
jollyjoester
0
150
Other Decks in Programming
See All in Programming
Infer入門
riru
4
1.1k
Claude Code と OpenAI o3 で メタデータ情報を作る
laket
0
110
階層化自動テストで開発に機動力を
ickx
1
480
ワープロって実は計算機で
pepepper
2
1.1k
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
120
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
180
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.4k
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
8
570
Flutterと Vibe Coding で個人開発!
hyshu
1
230
decksh - a little language for decks
ajstarks
4
21k
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
420
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
790
Featured
See All Featured
Making Projects Easy
brettharned
117
6.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Facilitating Awesome Meetings
lara
54
6.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Agile that works and the tools we love
rasmusluckow
329
21k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Documentation Writing (for coders)
carmenintech
73
5k
A designer walks into a library…
pauljervisheath
207
24k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
Faster Mobile Websites
deanohume
308
31k
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!