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
Cで理解するソケットプログラミング
Search
Gin
November 21, 2020
Technology
540
0
Share
Cで理解するソケットプログラミング
Gin
November 21, 2020
More Decks by Gin
See All by Gin
論理と感覚
gin2525
0
260
try to scraping with linebot
gin2525
1
290
Other Decks in Technology
See All in Technology
AIAgentと取り組むKaggle
508shuto
2
590
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
220
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
120
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
1
350
Oracle Cloud Infrastructure:2026年5月度サービス・アップデート
oracle4engineer
PRO
1
110
権限管理設計を完全に理解した
rsugi
2
210
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
2.4k
Claude Code x Accounting
kawaguti
PRO
1
320
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
130
イベントストーミングとKiroの仕様駆動開発で実現する要件の認識合わせプロセス
syobochim
5
520
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
320
Kiro CLI v2.0.0がやってきた!
kentapapa
0
130
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
310
It's Worth the Effort
3n
188
29k
Un-Boring Meetings
codingconduct
0
300
Rails Girls Zürich Keynote
gr2m
96
14k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
210
Writing Fast Ruby
sferik
630
63k
Practical Orchestrator
shlominoach
191
11k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
How to Talk to Developers About Accessibility
jct
2
210
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Transcript
২ాୋ༐ $Ͱཧղ͢Δ ιέοτϓϩάϥϛϯά ͏Ұɺ$ΛΖ͏
w ২ాɹୋ༐ ΤμɹλΧΦ w ֶੜ w $ॳ৺ऀ w ετϩϯάθϩେ͖
w 5XJUUFS!HJODP IUUQTUXJUUFSDPNHJODP w ;FOOॻ͖͍ͨ ࣗݾհ
ࠓճͷಈػ
$ݴޠͬͯ ͔ͬ͜Α͘ͳ͍Ͱ͔͢ʁ
͍ ࣮͕খ͍͞ ࢝ͷݴޠ ͍͠ ͜Μͳͷ உͷࢠ େ͖Ͱ͠ΐ
04ͷ։ൃ ݴޠͷ։ൃ ϨΠϠʔٕज़ɹ XBOOBCF BIBDLFS
6/*9ͱͷؔ࿈ੑ
$ݴޠʹ6/*9ͷ͕ࠟࢁ
ࠓճͦΕΒΛབྷΊͯɺ $ݴޠΛɻ
ରऀ ᶃ $Λͪΐͬͱ৮ͬͨ͜ͱ͋Δ ᶄ ଞͷݴޠ৮ͬͨ͜ͱ͋Δ ᶅ $ͷงғؾ͕Γ͍ͨ
ࠓͷඪ
$ݴޠͬΆ͞ΛഽͰײ͡Δ͜ͱ
ຊͷϓϩάϥϜ Ұ ϙΠϯλΉ͍ͣΜ͕ͩ ೋ ߏମʁΠϯελϯεΈ͍ͨͳΜͰ͠ΐʁ ࡾ ʮશͯϑΝΠϧͰ͋Δʯ ࢛ ϑΝΠϧσΟεΫϦϓλͬͯͳΜͩΑ ޒ
*1ΞυϨεʁύιίϯॅॴͰ͠ΐʁ ϙʔτ൪߸ͬͯͳΜͰඞཁͳΜͩΑ ࣣ ιέοτϓϩάϥϛϯάͬͯͳΜͩΑ ീ ιέοτϓϩάϥϛϯάͬͯͲ͏ͬͯ͢ΔΜͩΑ ͓͍ɺฒྻԽ͠ͳ͍ͱ͍ʹͳΒΜͧ
Ұ෦ɹϙΠϯλΉ͍͕ͣͩ
ॴḨɺϝϞϦΞυϨεͰ͢ɻ ͘͠ߟ͑ͳ͍Ͱ͍ͩ͘͞ɻ
ίʔυΛݟͯΈΔɻ TBNQMFDIBQUFSD
ʮ͜Εɺ͍ͭ͏ΜͩΑʯ
ؔʹ͢ͱ͖ͷྫ ʢ࣮ҾɹʂʹɹԾҾʣ TBNQMFDIBQUFSD
$Ͱɺೖؔʹ࣌͢ɺ σʔλΛίϐʔ͢Δɻ TBNQMFDIBQUFSD
ೋ෦ɹ ߏମʁΠϯελϯεͩΖʁ
֓ͶɺͦͷཧղͰ ຊߨ࠲Ͱͳ͍Ͱ͢ɻ
ܧঝ͕Ͱ͖ͳ͍ ϝιουͷఆٛ໘
ίʔυΛݟͯΈΔ TBNQMFDIBQUFSD
ࡾɹʮશͯϑΝΠϧͰ͋Δʯ
ϓϩάϥϜ ֎෦ͷϦιʔεΛ༻͢Δ
ϓϩάϥϜ͔ΒݟΔͱ શͯʮϑΝΠϧʯͰ͋Δɻ
ͦΕ͕ɺΩʔϘʔυͩΖ͏͕ ը໘ͩΖ͏͕ɺ ʮϑΝΠϧʯʹݟ͍͑ͯΔɻ
ͭ·ΓɺϓϩάϥϜ͔Β ֎෦ϦιʔεʹΞΫηε͢Δͱ͖ɺ ͦͷ࣮Λҙࣝ͠ͳͯ͘ྑ͍ɻ
࢛෦ɹ ϑΝΠϧσΟεΫϦϓλͬͯͳΜͩΑ
ϑΝΠϧ σʔλετϦʔϜ ϓϩάϥϜ
ϑΝΠϧσΟεΫϓλ ֎෦ϦιʔεΛ൪߸ͱରԠ͚ͮΔ ͱ͍͏֓೦
ϑΝΠϧσΟεΫϓλ ൪߸ Ϧιʔε ΩʔϘʔυ ը໘ ϩάϑΝΠϧ ʜ
ʜ
ඪ४ೖྗ TUEJO ඪ४ग़ྗ TUEPVU ൪߸ Ϧιʔε ΩʔϘʔυ ը໘
ϩάϑΝΠϧ ʜ ʜ ඪ४ೖྗ TUEJO ඪ४ग़ྗ TUEPVU
ϓϩάϥϜίʔυΛΈͯΈΑ͏ TBNQMFDIBQUFSD
ϓϩάϥϜ͔ΒݟΔͱ શͯʮϑΝΠϧʯͰ͋Δɻ
ޒ෦ɹ *1ΞυϨεʁύιίϯͷॅॴͰ͠ΐʁ
͍ɻͦ͏Ͱ͢ɻ
ωοτϫʔΫʹ͓͚Δ Λϊʔυϗετ ͱ͍ͬͨΓ͢Δ
ݱࡏ*1Wঢ়ଶͳͷͰɺ /"5ʢ/"15ʣ͕ඞਢɻ
ٖࣅతʹʮύιίϯͷॅॴʯ Λ࣮ݱ͍ͯ͠Δ
෦ɹ ϙʔτ൪߸ͬͯͳΜͰඞཁͳΜͩΑ
ͭͷϗετͰಈ͍͍ͯΔ ΞϓϦέʔγϣϯෳ͋Δ
ϗετΞυϨε
ͰɺͲ͏ͬͯ04 ΞϓϦΛࣝผ͢Δʁ
ωοτϫʔΫʹ͓͚Δղܾखஈ ϙʔτ൪߸Ͱ͋Δ
04 8FC TFSWFS .BJM TFSWFS %/4
ϙʔτ൪߸
ࣣ෦ɹ ιέοτϓϩάϥϛϯάͬͯͳΜͩΑ
௨৴ʹؔ͢ΔϓϩάϥϜ
ιέοτϥΠϒϥϦιέοτ"1*
ιέοτϓϩάϥϛϯά
8FCϑϨʔϜϫʔΫ ͜ΕΒΛύοέʔδԽͯ͠ Ӆṭ͍ͯ͠Δɻ
ݪ࢝తͳ௨৴ϓϩάϥϜ
શͯʮϑΝΠϧʯͰ͋Δɻ
͔͠͠ɺ௨৴ྫ֎ͩ
ιέοτগ͠ෳࡶ
ϑΝΠϧʢϩʔΧϧʣͷ߹ 0QFO 3FBE 8SJUF $MPTF
ιέοτͷ߹ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU
ീ෦ɹ ιέοτϓϩάϥϛϯά ɹɹͬͯͲ͏ͬͯΔΜͩΑ
ίʔυ͕গ͘͠ͳΔͨΊɺ ෦తʹݟ͍͖ͯ·͠ΐ͏ɻ
͜͜ʂ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDߦ
04 8FC TFSWFS .BJM TFSWFS %/4
ιέοτ
͜͜ʂ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDdߦ
8FC TFSWFS ͷ ϓϩάϥϜ 04 ͷϓϩάϥϜ ʮ൪͏Ͷʙʯ
͜͜ʂ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDߦ
ͷ ϓϩάϥϜ ωοτϫʔΫ MJTUFO ͜͜Λઃఆͯ͠ɺ ଓͪΛ։࢝͢Δ
͜͜ʂ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDʙߦ
ͷ ϓϩάϥϜ ωοτϫʔΫ ͍ͬͯΔΫϥΠΞϯτ ௨৴ΛҰͭͣͭड͚ೖΕΔ
ͷ ϓϩάϥϜ ωοτϫʔΫ ͦΕͧΕʹσΟεΫϦϓλ ΛׂΓৼΔ
ͷϓϩάϥϜ 3PPQ\ ^ ιέοτ σΟεΫϦϓλ ΫϥΠΞϯτຖͷ σΟεΫϦϓλ
͜͜ʂ #JOE -JTUFO "DDFQU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDߦҎ߱
αʔό͕Ͱ͖·ͨ͠ɻ ͋ͱΫϥΠΞϯτͰ͢ɻ
ΫϥΠΞϯτ $POOFDU 3FBE XJSUF $MPTF TPDLFU
͜͜ʂ ΫϥΠΞϯτ $POOFDU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSDMJFOUDߦ
͜͜ʂ ΫϥΠΞϯτ $POOFDU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDdߦ
͜͜ʂ ΫϥΠΞϯτ $POOFDU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSDdߦ
͜͜ʂ ΫϥΠΞϯτ $POOFDU 3FBE XJSUF $MPTF TPDLFU TBNQMFDIBQUFSTFWFSD ߦ
͜͜Ͱɺ͕͋Γ·͢ɻ
ࠓͷαʔόಉ࣌ʹ ҰਓͷΫϥΠΞϯτ͔͠ ૬ख͕Ͱ͖ͳ͍
࠷ऴ෦ɹ ͓͍ɺฒྻԽ͠ͳ͍ͱ ɹɹɹɹɹ͍ʹͳΒͳ͍ͧɻ
͜Ε·ͰͷϓϩάϥϜ શͯγϯάϧεϨουͳ ϓϩάϥϜͰͨ͠
γϯάϧεϨουͳϓϩάϥϜ શͯͷॲཧ͕ྻ͕ߦΘΕΔ TBNQMFDIBQUFSD
όάɿϝΠϯεϨουͷ͍ӽ͠ TBNQMFDIBQUFSD TBNQMFDIBQUFSD
εϨουʹԿ͔ҾΛ͍ͨ͠ TBNQMFDIBQUFSD
ΫϥΠΞϯτͷσΟεΫϦϓλΛ εϨουʹͯ͠ɺฒྻԽʂ TBNQMFDIBQUFSTFSWFSD
όάɿεϨουηʔϑͰͳ͍ TBNQMFDIBQUFSD
εϨου εϨου CFFST
εϨου εϨου CFFST CFFST
εϨου εϨου CFFST CFFST CFFST CFFST
มΛϩοΫΞϯϩοΫ͢Δ ʢഉଞ੍ޚʣ TBNQMFDIBQUFSD
ຊͷϓϩάϥϜ Ұ ϙΠϯλΉ͍ͣΜ͕ͩ ೋ ߏମʁΠϯελϯεΈ͍ͨͳΜͰ͠ΐʁ ࡾ ʮશͯϑΝΠϧͰ͋Δʯ ࢛ ϑΝΠϧσΟεΫϦϓλͬͯͳΜͩΑ ޒ
*1ΞυϨεʁύιίϯॅॴͰ͠ΐʁ ϙʔτ൪߸ͬͯͳΜͰඞཁͳΜͩΑ ࣣ ιέοτϓϩάϥϛϯάͬͯͳΜͩΑ ീ ιέοτϓϩάϥϛϯάͬͯͲ͏ͬͯ͢ΔΜͩΑ ͓͍ɺฒྻԽ͠ͳ͍ͱ͍ʹͳΒΜͧ
$ݴޠͷงғؾ ͕Θ͔Γ·͔ͨ͠ʁ
04ͷ։ൃ ݴޠͷ։ൃ ϨΠϠʔٕज़ɹ ήʔϜ։ൃʢ$ ʣ XBOOBCF BIBDLFS
ຊ͓͖߹͍͖ ͋Γ͕ͱ͏͍͟͝·ͨ͠
২ాୋ༐ $Ͱཧղ͢Δ ιέοτϓϩάϥϛϯά ͏Ұɺ$ΛΖ͏