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
OpenJDKアンカンファレンス 2022-09
Search
orekyuu
September 30, 2022
Programming
0
170
OpenJDKアンカンファレンス 2022-09
orekyuu
September 30, 2022
Tweet
Share
More Decks by orekyuu
See All by orekyuu
[JJUG CCC 2022 fall] Fargate上のJVMからCPUを認識するまで 〜正しく認識されないCPUの謎を追え〜
orekyuu
1
2.3k
至極の難問言語仕様クイズ 〜最強のマルチリンガル決定戦〜
orekyuu
2
2.1k
burikaigi2021 Rails製ECサイトの決済速度を上げろ!〜決済処理チューニングの記録〜
orekyuu
3
1.7k
実際困る!クロスドメイン間のセッション管理を考えよう
orekyuu
1
890
pixiv PAYで運用している フレンズパターン
orekyuu
1
3.5k
日本初のキャッシュレス即売会を支えた決済アプリ pixiv PAYの技術
orekyuu
1
1.6k
Other Decks in Programming
See All in Programming
TDD 実践ミニトーク
contour_gara
1
280
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
230
速いWebフレームワークを作る
yusukebe
4
1.6k
機能追加とリーダー業務の類似性
rinchoku
0
410
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
400
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
140
rage against annotate_predecessor
junk0612
0
160
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
0
240
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
1k
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
140
Rancher と Terraform
fufuhu
2
200
フロントエンドのmonorepo化と責務分離のリアーキテクト
kajitack
2
160
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Statistics for Hackers
jakevdp
799
220k
Facilitating Awesome Meetings
lara
55
6.5k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Agile that works and the tools we love
rasmusluckow
330
21k
Scaling GitHub
holman
463
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Site-Speed That Sticks
csswizardry
10
800
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Become a Pro
speakerdeck
PRO
29
5.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
!PSFLZVV ͬ͘͟Γ4FSJBM($ͷ࣮ΛಡΉ 0QFO+%,݄ΞϯΧϯϑΝϨϯεPQFOKELKQ
ࠓͷΰʔϧ 0QFO+%,ͷ($ͷ࣮ΛಡΜͰΈΑ͏ͷͱ͔͔ͬΓʹͳΔ ͲͷίʔυಡΊ͍͍ͷʁ ॲཧͷྲྀΕͲ͏ͳͬͯΜͷʁ ཪͷΰʔϧ
0SFLZVVͷೝࣝζϨͷൃݟ $PNJUUFSͷิͰ͕ٙղܾͰ͖Δͱخ͍͠ʂ
ࠓͷྲྀΕ ($ͷॲཧΛಡΉલͷͬ͘͟Γͱͨ͠ొਓͷཧ :PVOHྖҬͷ($ͷྲྀΕΛಡΜͰݟΔ 0MEྖҬʹ͕ؔͯ࣌ؒ͠ͳ͍ͷͰ·ͨผͷػձʹʂ
0QFO+%,ͷ($ܥͷॲཧͷॴ w TSDIPUTQPUTIBSFHD w TFSJBMˡ͜͜ʹ4FSJBM($ͷ࣮ w TIBSFEˡ͜͜ʹෳͷ($ΞϧΰϦζϜͰ͏࣮͕ೖ͍ͬͯΔ w ͦͷଞ($ΞϧΰϦζϜຖʹσΟϨΫτϦ͕۷ΒΕ͍ͯΔׂ͕Ѫ
7.ͷΫϥεͱΦϒδΣΫτΛཧ͢Δਓ
6OJWFSTFͷॳظԽλΠϛϯάͰ )FBQΛ࡞͢Δ
($$PO fi HͲͷ($ΞϧΰϦζϜΛ ͏͔ͷϩδοΫΛ͍࣋ͬͯΔ ($$PO fi HTFMFDU@HD
(D"SHVNFOUT($ΞϧΰϦζϜ͝ͱʹ αϒΫϥεΛ࣋ͭ
DFBUF@IFBQΛ࣮ͯ͠ɺ $PMMFDUFE)FBQΛ࡞ͬͯฦ͢
$PMMFDUFE)FBQ)FBQྖҬͷཧ (FO$PMMFDUFE)FBQੈผͷώʔϓͰ ZBOHͱPMEͷ(FOFSBUJPOΛ͍࣋ͬͯΔ ͦͷαϒΫϥεͱͯ͠4FSJBM)FBQ͕͍Δ
(FO$PMMFDUFE)FBQ @ZPVOH@HFOͱ@PME@HFOΛ࣋ͭ
۩ମతͳ($ͷॲཧ(FOFSBUJPO ʹهड़͞Ε͍ͯΔ
(FOFSBUJPO($ͷॲཧঢ֨ͷॲཧͳͲΛ͍࣋ͬͯΔ
4FSJBM($ͷ͓͞Β͍
ώʔϓͷߏ w ώʔϓେ͖͘ZPVOHͱPMEʹ͔Ε͍ͯΔ w ZPVOHʹFEFOTVSWJWPS ͞ΒʹதͰGSPNUP ͷྖҬ͕͋Δ
ώʔϓͷߏ w ৽͘͠࡞ΒΕͨΦϒδΣΫτFEFOʹׂΓͯΒΕΔ
ώʔϓͷߏ w ($ͰUPʹҠಈͯ͠ྸ͕૿͑Δ
ώʔϓͷߏ w ͋ΔҰఆͷྸʹͳΔ·Ͱ̜̘͞Εͳ͚ΕPMEʹҠಈ͢Δ
%FG/FX(FOFSBUJPODPMMFDU
4FSJBM)FBQIFBQ Ͱ 4FSJBM)FBQͷࢀর͕औΕΔͬΆ͍
͜ͷΜ($ͷ౷ܭใΛऔΓ͍͚ͨͩΈ͍ͨͳͷͰ ຊےͱؔͳͦ͞͏
PME@HFO͋ͱͰग़ͯ͘ΔͷͰ ͦ͏͍͖͑࣋ͬͯͯͨͳʔ͘Β͍ʹ͓͍͍֮͑ͯͯͩ͘͞
($͕ޭͦ͠͏ʹͳ͍ͳΒHDΛఘΊͯͯ࣍ͷੈʹ·͔ͤΔ ͭ·Γ'VMM($
5Pεϖʔε͕ۭͰͳ͍ͳΒޭ͠ͳͦ͞͏
VTFECZUFT͕ͯ͢PMEੈʹঢ֨ͨ͠ͱ͖ʹׂΓͯΒΕΔʁ VTFE͕ͯ͢ঢ֨͢ΔΘ͚Ͱͳ͍͚Ͳɺ࠷ѱέʔεͰߟ͑ͯΔΆ͍
ޙͰग़ͯ͘Δ3FG1SPD1SPYZ5BTLͰΘΕΔΫϩʔδϟͰɺ ΦϒδΣΫτ͕ੜ͖͍ͯΔ͔Λฦ͠·͢
ऑࢀরΛॲཧ͢ΔͨΊͷΫϩʔδϟͰ͢ ੈؔͳ͘Ұׅॲཧ͢ΔΒ͍͠
ྸͷςʔϒϧΛΫϦΞͯ͠ΔͬΆ͍͚Ͳͳͥʁ 4VSWJWPSؒͷҠಈͰྸ͕૿͍͑ͯͣ͘Ͱʜ
5PྖҬΛফڈ
4VSWJWPSͷίϐʔɺঢ֨Λ͍ͬͯͦ͏ʁ
ͭͷΫϩʔδϟ'BTU4DBO$MPTVSFΛܧঝ͍ͯͯ͠ɺ ੜ͖ͬͨΦϒδΣΫτ PCKJT@GPSXBSEFE ΛUPྖҬίϐʔ͍ͯ͠Δ
͖͍͠ͷྸ·Ͱ͍͔ͳ͚ΕUPྖҬίϐʔ
ྸ͕͖͍͠Λ͑͜ΔͱPMEঢ֨
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
%
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ৽͍͠Πϯελϯε &EFOʹஔ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPUΛ5Pίϐʔ "` ;` %`
લͷͭͷΫϩʔδϟͰॲཧͨ͠ΦϒδΣΫτ͔ΒḷΕΔ ΦϒδΣΫτΛ࠶ؼతʹ5PίϐʔPSঢ֨ͤ͞Δ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
ऑࢀরͷΦϒδΣΫτʹJT@BMJWFͱLFFQ@BMJWFͷΫϩʔδϟΛద༻͢Δ
͜͜·ͰͰɺϚΠφʔ($ͷ ΦϒδΣΫτͷίϐʔ͕ऴྃ
ίϐʔޙͷॲཧ
ࠓճͷ($Ͱঢࣦ֨ഊͨ͠߹ɺ@QSPNPUJPO@GBJMFE͕USVFʹͳΔ
ঢ֨ʹࣦഊ͍ͯ͠ͳ͍߹ɺFEFOͱGSPNΛۭʹ͢Δ UPͷίϐʔ͕ऴΘ͍ͬͯΔͷͰɺΓੜ͖͍ͯͳ͍ͣ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS # &EFOͱ'SPNΛۭʹ͢Δ "`
;` %` $`
&EFO :PVOH(FO 0ME(FO 5P 'SPN 0ME 4VWBJWFS # 'SPNͱ5PΛೖΕସ͑Δ "`
;` %` $`
ঢࣦ֨ഊͨ͠߹ɺGPSXBSEJOHQPJOUFSΛআ͢Δ ҠಈΛऔΓফ͢ʁ
'SPNͱUPΛަ͢Δ ঢ֨ʹࣦഊ͠ͳ͔ͬͨͱ͖GSPNͱFEFOΛۭʹ͍͕ͯͨ͠ɺ ࠓճͦΕ͕ͳ͍
ίϐʔ͞Ε͕͍ͨͭͬͯΔͷͰɾɾɾʁ ͙͢ʹGVMMHD͞ΕΔ͔Βஔ͍͓ͯͬͯ͘͜ͱ͔ͳʁ
ঢࣦ֨ഊͨ͜͠ͱΛ௨ͯ͠ऴྃ
·ͱΊ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
%
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ৽͍͠Πϯελϯε &EFOʹஔ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPUΛ5Pίϐʔ "` ;` %`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS # &EFOͱ'SPNΛۭʹ͢Δ "`
;` %` $`
&EFO :PVOH(FO 0ME(FO 5P 'SPN 0ME 4VWBJWFS # 'SPNͱ5PΛೖΕସ͑Δ "`
;` %` $`