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
Listかもしれない
Search
irof
January 30, 2023
Programming
2
580
Listかもしれない
【オンライン】 JJUGナイトセミナー「コレクションフレームワーク特集」1/30(月) 開催
https://jjug.doorkeeper.jp/events/149811
irof
January 30, 2023
Tweet
Share
More Decks by irof
See All by irof
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
300
複数アプリケーションを育てていくための共通化戦略
irof
10
4.1k
SpringBootにおけるオブザーバビリティのなにか
irof
1
970
Javaアプリケーションモニタリングの基本
irof
7
2.6k
Webアプリケーションを作りましょう
irof
0
130
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
6.2k
バッチを作らなきゃとなったときに考えること
irof
2
780
SpringBoot3.4の構造化ログ #kanjava
irof
3
1.4k
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
12
5.2k
Other Decks in Programming
See All in Programming
datadog dash 2025 LLM observability for reliability and stability
ivry_presentationmaterials
0
170
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
220
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
150
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
150
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
Java on Azure で LangGraph!
kohei3110
0
170
XSLTで作るBrainfuck処理系
makki_d
0
210
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
510
関数型まつりレポート for JuliaTokai #22
antimon2
0
160
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
20
3.7k
A2A プロトコルを試してみる
azukiazusa1
2
1.2k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
300
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Adopting Sorbet at Scale
ufuk
77
9.4k
How STYLIGHT went responsive
nonsquared
100
5.6k
Site-Speed That Sticks
csswizardry
10
660
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
For a Future-Friendly Web
brad_frost
179
9.8k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
-JTU͔͠Εͳ͍ ++6(φΠτηϛφʔʮίϨΫγϣϯϑϨʔϜϫʔΫಛूʯ 5
ࠓͷ 話 気 ……
ίϨΫγϣϯͱ
ίϨΫγϣϯͱ ίϨΫγϣϯʢࡶʣ ίϨΫγϣϯʢͱΓ͋͑ͣʣ ίϨΫγϣϯʢͪΌΜͱʣ ͦͷଞͷίϨΫγϣϯ ίϨΫγϣϯͱྻ
ίϨΫγϣϯͱ ʢࡶʣ
ࡶͳίϨΫγϣϯ ཁૉΛෳ·ͱΊͯѻ͏ͷ ෳʹO ೖΕɺ͔ͨ·Γɺଋɺίϯς φɺू߹ɺɺɺ
ίϨΫγϣϯͷؒ $PMMFDUJPOT'SBNFXPSLʢࠓճʣ ྻ 0QUJPOBM 4USFBN ଞͷίϨΫγϣϯ 覚
ίϨΫγϣϯ ʢͱΓ͋͑ͣʣ
ͱΓ͋͑ͣ -JTU ͍͍ͩͨ͜ΕͰࣄΓΔ .BQ ΩʔͰҰຊΓ͍ͨ͠ͱ͖ʹ
લఏΠϯλϑΣʔεͱ࣮Ϋϥε ίϨΫγϣϯجຊతʹΠϯλ ϑΣʔεͰѻ͍·͢ɻ ࣮ΫϥεΠϯελϯεੜ ࣌ͳͲಛผͳ߹͚ͩɻ ͰͱΓ͍͍͋͑ͣɻ
-JTUͱΓ͋͑ͣ͑Δ Πϯελϯε͕࡞ΕΔ ཁૉΛՃͰ͖Δ ϧʔϓͰ͖Δ
-JTUͱΓ͋͑ͣ͑Δ List完全
શʹϚελʔͨ͠ ʮͱΓ͋͑ͣ͑Δʯ͜ΕΛ ͪΌΜͱͰ͖Ε͍͍ɻ ͱΓ͋͑ͣ"SSBZ-JTU ͱΓ͋͑ͣδΣωϦΫεॻ͍ͱ͘ BEE GPSFBDIϧʔϓ
ͪΌΜͱ͑ͯͳ͍ྫ
.BQͱΓ͋͑ͣ͑Δ Πϯελϯε͕࡞ΕΔ ཁૉΛՃͰ͖Δ ཁૉΛऔΓग़ͤΔ
.BQͱΓ͋͑ͣ͑Δ
શʹϚελʔͨ͠ ʮͱΓ͋͑ͣ͑Δʯ͜ΕΛ ͪΌΜͱͰ͖Ε͍͍ɻ )BTI.BQ LFZ)BTI.BQͰѻ͑Δͷ ͱΓ͋͑ͣ4USJOHͰ͍͍ɻ͋ͱͰΘ͔Δ
ͱΓ͋͑ͣίϨΫγϣϯ͑Δ ͬͯݴ͍͍ͬͯɻ ͜ΕͰۀॲཧॻ͚ͳ͘ͳ͍ɻ Α͘Θ͔ΒΜͷग़͖ͯͨΒʮͱΓ͋ ͑ͣʯͷ࣍ʹਐΈ·͠ΐ͏ɻ ͍͖ͳΓίϨΫγϣϯશΫϥεͱ͔શϝ ιουͷ͍ํͱ͔֮͑ͳ͍͍ͯ͘Αɺ΄ Μͱʹɻ
ͱΓ͋͑ͣʹ͚ম͖ਕ ଘࡏνΣοΫDPOUBJOT আSFNPWF ͜Ε͘Β͍ͰʮͰ͖ͳ͍ॲཧʯͦ͏ ͳ͍ͱࢥ͏ ޮѱ͍ͱ͔อकੑѱ͍ͱ͔μα͍ͱ ͔͋Δ͚Ͳɺͦ͜Εํͳ͍
ίϨΫγϣϯ ʢͪΌΜͱʣ Java SE 話
$PMMFDUJPOT'SBNFXPSL ίϨΫγϣϯͷϑϨʔϜϫʔΫ +BWBͰಋೖ͞Εͨͷ ʢલʣ ʜʜಋೖͩͱࢥͬͯͨΑɻϓϩ δΣΫτͬͯͨ࣌7FDUPSͱ͔ग़͖ͯ ͔ͨΒɻ
$PMMFDUJPOT'SBNFXPSL ΠϯλϑΣʔεͱ࣮Λ͚Δ ͷ͕ྲྀߦ͍ͬͯͨ࣌ ࠓ͑ͯΔͷ͜Εͷ͓͔͛ײ͋Δ ϚγϯεϖοΫ͕ශऑͳ࣌ Α͘Ͱ͖ͯΔʢਖ਼ʣ
$PMMFDUJPOT'SBNFXPSLͷ ΠϯλϑΣʔεͨͪ 覚
ΫϥεೖΕΔͱΧΦεʹͳΔ 知
ͬ͠ͱ͚ -JTU .BQ $PNQBSBCMF $PNQBSBUPS 4FU 4PSUFE4FU
4PSUFE.BQ ൪֎ $PMMFDUJPO ΄͔ 各層 中 話
ίϨΫγϣϯͪΌΜͱ͑Δ ͬͯͳΜΑʁͱͳΓ·͢ɻ ͳͷͰͪΌΜͱΛϨϕϧʹ͚ ͯΈΔɻ
ͪΌΜͱ ΠϯλϑΣʔεΛબͰ͖Δ ࣮ΛબͰ͖Δ ඇίϨΫγϣϯͱมͰ͖Δ ʢ͜·͝·ͨࣝ͠κʔϯʣ ίϨΫγϣϯΛ࣮Ͱ͖Δ #FUUFSίϨΫγϣϯΛ࡞ΕΔ =====超 壁=====
ଞͷίϨΫγϣϯ
ଞͷίϨΫγϣϯʁ $PMMFDUJPOT'SBNFXPSLҎ֎ʹί ϨΫγϣϯଘࡏ͠·͢ɻ Γͳ͍ྖҬͰಠࣗͷίϨΫ γϣϯ͕ΘΕΔ͜ͱ͋Γ·͢ɻ นΛඈͼӽ͑ͨਓ͕ͨͪͬͯ· ͢ɻ
ίϨΫγϣϯ $PMMFDUJPOT'SBNFXPSL+BWB 4&Ͱఏڙ͞Ε·͕͢ɺݴޠతʹ ಛผѻ͍͞Ε͍ͯΔͷ*UFSBCMF ͘Β͍Ͱ͢ɻ
*UFSBCMFͷಛผѻ͍
ͱ͍͑GPSFBDIϧʔϓ ࠷ۙʢ+BWB݄ɺͭ· ΓલʜʜʣGPS&BDIϝιο υ͕ੜ͑ͯ-BNCEBͤΔΑ͏ʹ ͳͬͨΓͯ͠ΔͷͰɺGPSFBDI ϧʔϓͦ͜·ͰརͰͳ͍ Ͱ͢ɻ
ଞͷίϨΫγϣϯ̎छྨ ίϨΫγϣϯͷΠϯλϑΣʔε Ұ෦ΫϥεΛͬͯɺΑΓతʹ ߹ͬͨίϨΫγϣϯ࣮ ΠϯλϑΣʔε͔Βؙ͝ͱ࠶ઃܭ ͞Εͨ$PMMFDUJPOT'SBNFXPSLͱ ޓੑͷͳ͍#FUUFSίϨΫγϣϯ
ίϨΫγϣϯ࣮ +BWBඪ४ϥΠϒϥϦʹࢄݟ͞ΕΔɻ γʔϜϨεʹସͰ͖ɺతʹ߹͍ͬͯͨ ΒྗΛൃش͢Δɻ ΠϯλϑΣʔε͑͞߹ͬͯΕ͍͍ͷͰɺ 3%#ʹଓ͢ΔίϨΫγϣϯͱ͔࡞ ΕΔɻ ͍ʹͳΔ͔ΒΜɻ
#FUUFSίϨΫγϣϯ $PMMFDUJPOT'SBNFXPSLͷܕ֊ૢ࡞ ʹҟΛএ͑Δಠࣗ࿏ઢɻ ੑೳ"1*ͷ͍উख༏Δͷͷɺඪ ४ͱ֎ΕΔ͕Ώ͑ʹଞͷϥΠϒϥϦͱ ͷΓͱΓͷ෦Ͱଟগటष͘ͳΔɻ ͰศརͰ҆શͰޮ͍͍ɻ
ίϨΫγϣϯͷૢ࡞
Γ͍ͨૢ࡞ Ճ আ ஔ நग़ ׂ ूܭ ҙͷॲཧ ม ଞ͋Δ͔
ίϨΫγϣϯૢ࡞ ҰݸͣͭऔΓग़ͯ͠ΕͱΓ͋ ͑ͣͳΜͱ͔ͳΔ ੑೳ͕ڐͤɻ ࣮ྔ͕ڐͤɻ ίʔυ͕ଟ͍ͱ୯७ʹ໘ͩ͠ɺ ίʔυ͕ଟ͍͚ͩόάΓ͍͢ɻ
࣍Ͱ😉
ίϨΫγϣϯΘ͔Δ
Θ͔Δ͍Ζ͍Ζ ΫϥεϝιουΛ҉ه͍ͯ͠ ͯΘ͔Δͱ͍͑·ͤΜɻ
$PMMFDUJPOT'SBNFXPSLͷ ΠϯλϑΣʔεͨͪ 覚 再掲
ΫϥεೖΕΔͱΧΦεʹͳΔ 知 再掲
KBWBVUJM ͚ͩݟͯ List実装 Map実装
Θ͔Δ͍Ζ͍Ζ ֮ͦͦ͑ΔͷແཧΑͶ
ͳͷͰ͝ͱʹ ʮ͜ΕΘ͔Δʯͱݴ͑ͦ͏ͳΛ͠·͢
-JTU ॱংͷ͋ΔίϨΫγϣϯͰ͢ɻ ॱং͕͋ΔͷͰ ೖΕͨॱ͕ҡ࣋͞ΕΔ ฒͼସ͕͑Ͱ͖Δ ฒͼॱΛѻ͑Δඞཁ͕͋Δ
-JTUͷมߋՄೳੑ -JTUPG"SSBZTBT-JTUͰ࡞ͬͨΓɺ $PMMFDUJPOTVONPEJ fi BCMF-JTUΛ௨ͨ͠-JTUมߋͰ ͖ͳ͍ɻ มߋͰ͖ͳ͍-JTUʹมߋૢ࡞Λߦ͏ͱ 6OTVQQPSUFE0QFSBUJPO&YDFQUJPO͕ൃੜ͢Δɻ࣮ߦ࣌ྫ֎ͭ Β͍ɻ -JTUʹݶΒͳ͍͚ΕͲίϨΫγϣϯશൠ๊͕͑Δɺ
ݹ͔͘ΒΑ͘ΒΕͨڍಈɻ มߋෆՄΛલఏʹ͢Δͷ͕ྑ͍ɻ
-JTUͷ࣮બ KBWBVUJM"SSBZ-JTU -JTUPG & ੜ͢Δͱ͖͜ͷ̎ɻ ଞ͋Δ͚Ͳ͋·Γؾʹ͠ͳ͍͍ͯ͘ Ͱ͢ɻ
"SSBZ-JTUͱ-JOLFE-JTU ΄ͱΜͲ"SSBZ-JTUͰ͍͍ -JOLFE-JTUͷํ͕దΆ͍໘Ͱ "SSBZ-JTUͷํ͕ੑೳͰͨΓ͠ ͯ͠·͏͜ͱ͠͠ "SSBZ-JTU͕͍͞Εͨ݁Ռͱ͔ͳ Μͱ͔
.BQ ΩʔͰѻ͏࣌ʹ͍·͢ɻ ΩʔಉੑʢFRVBMTIBTI$PEFʣ͕ద ʹ࣮͞Ε͍ͯΔඞཁ͕͋Γ·͢ɻ FRVBMTIBTI$PEF.BQͷͨΊʹ͋Δͱ ݴͬͯաݴͰͳ͍ɻ աݴͩͬͨɻͰίϨΫγϣϯͷͨΊʹ͋Δͱ ݴͬͯաݴͰͳ͍ؾ͠ͳ͍Ͱͳ͍ɻ
.BQͷࠪ $PMMFDUJPOͰͳ͍ ͭ·Γ*UFSBCMF͕࣮͞Ε͍ͯͳ͍ FOUSZ4FU Ͱ4FU&OUSZʹͯ͠ ͔ΒͿΜ·Θ͢ɻ LFZ4FU WBMVFT ͋Δ͚Ͳɺѹ తʹFOUSZ4FU
ͷग़൪͕ଟ͍ɻ
ฒͼॱ ൺֱ͢ΔͨΊͷ $PNQBSBCMF͕࣮͞ΕͨΫϥε ͕ཁૉͳΒͦͷॱͰฒΒΕΔ ฒͼସ͕͑ࣗ༝ʹͰ͖ΔͱΘ͔ͬͯΔ ײ͋Δ
ฒͼॱ ฒͼସ͑Δ࣌ʹ༩͑Δɻ
$PNQBSBUPS $PNQBSBUPSͷϑΝΫτϦϝιο υʢDPNQBSJOHͱ͔ʣͰ࡞Δɻ $PNQBSBUPSΠϯλϑΣʔεΛ࣮ ͠ͳ͍ɻ
$PNQBSBUPS -JTU -JTUΛιʔτ͢Δͱ͖ʹTPSUϝ ιουʹ$PNQBSBUPSΛ͚͢Ε Ͳɺ-JTU͕มߋՄೳ-JTU͔Ͳ͏͔ Ͱ࣮ߦ࣌ΤϥʔʹͳΔɻ ࠷ۙ͋·Γ͠ͳ͍ɻ 4USFBNͰTPSUͯ͠UP-JTUͪ͠Ό͏ɻ
4FU ॏෳ͠ͳ͍ίϨΫγϣϯͰ͢ɻ ॏෳ͢Δ͔Ͳ͏͔ಉੑʹ ͞Ε·͢ɻ ಉੑ࣌ؒ࣍ୈͰ͋ͱͰɻ جຊతʹॱংͳ͍Ͱ͢ɻ ͋Δ͚ͲΞςʹͨ͠Βμϝɻ
4PSUFE4FU4PSUFE.BQ ͱݴ͑ʮ4FU͍͍͚ͨͲॱং ʔʯͱ͔ݴ͍ग़͢͜ͱଟ͍Ͱ ͢ɻΘ͕··ɻ ͳͷͰηοτͰ4PSUFE4FU͑ ͓͖ͯ·͠ΐ͏ɻ ͍ͭͰʹ4PSUFE.BQɻ
൪֎$PMMFDUJPO $PMMFDUJPO͕ग़ͯ͘Δ͜ͱ໓ଟ ʹͳ͍Ͱ͢ɻ
"SSBZ-JTU͡Όͳ͘-JTUΛ͏
ͦͷઌ ίϨΫγϣϯ͕બΔ
൚༻࣮ͷબࢶ 覚 ( 「⼊⾨」)
ͨͩ͠ ੑೳ໘͔ΒదͳίϨΫγϣϯΛબ ΜͩͭΓͰɺ࠷ۙͷίϯϐϡʔ λʔϦιʔεͩͱޡࠩʹऩ·ͬͨΓ ͠·͢ɻίϨΫγϣϯͰؤுͬͨΓ ͢Δ·͑ʹɺઃܭ4USFBNɺαʔυ ύʔςΟʔͷ#FUUFSίϨΫγϣϯͰ ରॲ͢Δ΄͏͕ྑ͍ײ͡͠·͢ɻ
༩ଠ ⽂句
͑ͳ͍ϝιου͕͋Δ 6OTVQQPSUFE0QFSBUJPO&YDFQUJPO ͕ى͜Δɻ࣮ߦ࣌ྫ֎ͭΒ͍ɻ ͜ΕKBWBMBOHύοέʔδͷͤ͘ʹ $PMMFDUJPOT'SBNFXPSLͷϝϯ όʔͳΜͰ͢ΑͶɻଞͰΘΕ ͯΔ͚Ͳɻ
OVMMͷѻ͍͕·ͪ·ͪ OVMM͕ೖΔίϨΫγϣϯͩͬͨΓɺೖΒͳ ͍ίϨΫγϣϯͩͬͨΓɺ·ͪ·ͪɻ OVMM͕ೖΒͳ͍ίϨΫγϣϯʹOVMMೖΕΔ ͱ࣮ߦ࣌ྫ֎ͭΒ͍ɻ +BWBEPDʹॻ͍ͯΔ͚Ͳಡ·ͳ͍ʢࣗനʣ ςετͰؾ͔ͮ͘Β͍͍͔ͳͬͯʜʜ
ΓΈͯ͌Ϳ JOUͱ͔CPPMFBOͱݴͬͨϓϦϛςΟϒ ʢ·ͩʣίϨΫγϣϯͰѻ͑ͳ͍ɻ ԼखʹΔͱϘΫγϯάʗΞϯϘΫγϯ ά͕සൃ͢Δɻ ͚ͲϚγϯύϫʔ্͕ͬͯผʹʹͳ Βͳ͍ͷඍົʹ໘ͳͱ͜Ζɻ
IBTI$PEFFRVBMT ίϨΫγϣϯͰཁૉಉ࢜Λൺֱ ͢Δ͜ͱଟ͍ɻ ͳͷͰ͜ΕΒΛѻ͑ͳ͍ͱʮίϨ Ϋγϣϯ͑ΔʯʹͳΒͳ͍ɻ ͜ͷ࣍ʹ$PNQBSBCMF͕ग़ͯ͘Δɻ
ಓIBTI$PEF IBTI$PEF͕Ұக͍ͯͯ͠Π ίʔϧͰͳ͍ʢશવҧ͏ͷͰ ඃ͍͍ͬͯʣ IBTI$PEF͕ҧͬͨΒඞͣҧ͏ʹ ͠ͳ͖Ό͍͚ͳ͍
͍ͨͩ͠IBTI$PEFͷ࣮ 役 ⽴
IBTI$PEFFRVBMTͷ࣮ ͖ͯͱ͏ʹ͠Β͍ͯͩ͘͞ɻ *%&ʹ࡞ΒͤΔͰ͍͍͠ɺ SFDPSEʹཔΔͰ͍͍͠ɻ
ίϨΫγϣϯͱ γϦΞϥΠζ
γϦΞϥΠζ ࣮Ͱ΄ͱΜͲҙࣝ͞Εͳ͍ Ͱ͋Ζ͏4FSJBMJ[BCMFͷɻ Βͳ͍͍ͯ͘Μ͚ͩͲɺΒ ͳ͍ͳΒΘͳ͍͜ͱɻ͏ͳ Β͓͔ͬͯͳ͖Ό͍͚ͳ͍ɻ
4FSJBMJ[BCMFੲ ҰੲલηογϣϯϨϓϦέʔγϣϯͱ͔Ͱඞཁ ͩͬͨΓͰඞ͚ͣͭ·͠ΐ͏ͱ͔ͳͬͯͨΜ͚ͩ ͲɺࠓΦϒδΣΫτΛγϦΞϥΠζ͢Δํ๏͕ ͜ΕʹݶΒͳ͘ͳͬͯΔͷͰग़൪ݮͬͯΔɻ ηογϣϯϨϓϦέʔγϣϯͰSFEJTͱ͔ͷ֎෦ ετϨʔδ͏ͳΒ͚ͦͬͪͷγϦΞϥΠζΛ ͢Ε͍͍ͷͰɻ ͨͱ͑+40/ʹॻ͖ग़͢ͳΒ4FSJBMJ[BCMFཁΒͳ͍ɻ
4FSJBMJ[BCMFੲ TFSJBM7FSTJPO6*%ͱ͍͏ͷ ʮܯࠂͰΔ͔Βͬͱ͜͏ʯ͘Β͍Ͱ࡞ ΒΕͯͨΓ͢Δɻ ͦΕͳΒ࡞Βͳ͍ํ͕ϚγͳΜ͚ͩͲͳ͊ʜʜ ͱԣͰݟͯΔɻ࣮ͳ͍ͷͰ͠͠εϧʔͪ͠Ό͏ɻ ͜ͷΛ࢝ΊΔͱऴΘΒͳ͍ͷͰলུɻ
ίϨΫγϣϯͱγϦΞϥΠζ -JTU4FSJBMJ[BCMFͰͳ͍ $PMMFDUJPOT'SBNFXPSLͷΠϯλ ϑΣʔεશ෦4FSJBMJ[BCMFͰͳ͍ "SSBZ-JTU4FSJBMJ[BCMFͰ͋Δ
ͨͱ͑͜͏͍͏࣮ NG 。 保証 。
)BTI4FUͷத
)BTI4FUͷத ॏෳΛͳ͍ͨ͘͠ͱ͖ʹΑ͘Θ ΕΔ)BTI4FUɺ)BTI.BQͱࣅ ͍ͯΔ͚ΕͲɺ)BTI.BQ͕Ωʔ ͱͷϖΞͰ͋Δͷʹରͯ͠ )BTI4FUཁૉ͚ͩΛѻ͏ͷͰγ ϯϓϧͩͱࢥ͏͔͠Εͳ͍ɻ
KBWBVUJM)BTI4FU
KBWBVUJM)BTI4FU 👈 中⾝HashMap
ੲͷࢠͨͪ
ग़͖ͯͨΒʮ͋ɺੲͷʜʜʯͱ Թ͔͍Ͱݟ͍ͯ͋͛ͯͩ͘͞ 「昔」 ⾔ 側 24年前問題
ίϨΫγϣϯͷ ެࣜυΩϡϝϯτ
ެࣜυΩϡϝϯτ 存在知 辿 着 問題
ͨͲΓ͖͔ͭͨ
None
όʔδϣϯ ̓ 分布差 込
出典 感覚
όʔδϣϯ ̓ 実際⾒ 現場
割合
👇
👉
👈
👇
👈
None
👈
None
読 物 ⾯⽩