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
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
Search
Infiniteloop
October 18, 2023
Programming
0
140
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
【タガヤス その13】ILの日常業務から 発表資料
https://tagayas.connpass.com/event/145290/
Infiniteloop
October 18, 2023
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2025年版)
infiniteloop_inc
14
52k
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
1
490
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
690
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
880
詫び石の裏側
infiniteloop_inc
0
720
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
7
33k
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
230
ADRという考えを取り入れてみて
infiniteloop_inc
0
220
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
170
Other Decks in Programming
See All in Programming
Practical Domain-Driven Design - Workshop at NDC 2025
mufrid
0
140
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
110
がんばりすぎないコーディングルール運用術
tsukakei
1
210
カクヨムAndroidアプリのリブート
numeroanddev
0
220
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
0
190
SODA - FACT BOOK
sodainc
1
320
推論された型の移植性エラーTS2742に挑む
teamlab
PRO
0
170
「兵法」から見る質とスピード
ickx
0
240
Development of an App for Intuitive AI Learning - Blockly Summit 2025
teba_eleven
0
100
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
130
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
100
TypeScriptのmoduleオプションを改めて整理する
bicstone
4
460
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Embracing the Ebb and Flow
colly
85
4.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Facilitating Awesome Meetings
lara
54
6.4k
KATA
mclloyd
29
14k
Bash Introduction
62gerente
614
210k
How to train your dragon (web standard)
notwaldorf
92
6.1k
The Invisible Side of Design
smashingmag
299
50k
How GitHub (no longer) Works
holman
314
140k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Designing for Performance
lara
608
69k
Transcript
I ❤ Virtual Machines ԾڥΛΑΓศརʹ͏πʔϧͨͪ
ࣗݾհ wYDࡀ
੨ݝീށࢢੜ·Ε
ࣗݾհ wYDࡀ w੨ݝീށࢢੜ·Ε wೖࣾϲ݄ͷ υ৽ਓ
ೖࣾͯ͋ͬͨ͋͠Δ
ࠓλΨϠεͰ ͬͯΈͳ͍ʁ
ͦͷͷϊϦ͚ͩͰ Ҿ͖ड͚͍͍ͨͷͷ
😰
˞ݸਓͷภݟͰ͢
😰
˞ݸਓͷภݟͰ͢
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
WT
࣋ͪωλͰҰ੮
None
ຊ
ͷલʹ
લఏ
wఆ͍ͯ͠Δͷେͷ෦͕1)1 Ͱॻ͔Ε͍ͯΔ8FCΞϓϦέʔγϣ ϯͷ։ൃͰ͢
w։ൃऀ͕ར༻͍ͯ͠Δීஈ͍ͷڥ w8JOEPXT wNBD04
wຊ൪ڥ-JOVYΛఆ͍ͯ͠·͢
࣍
None
None
None
None
ԾϚγϯʹΑΔ ։ൃڥߏங
ํ๏ͦͷ ۃ
͓ۚͰղܾ
ϓϩδΣΫτ͝ͱʹ·ͬͨ͘ಉڥͷઐ༻ ։ൃαʔό
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
ํ๏ͦͷ
ݱ࣮తͳͭ
ԾϚγϯ
ԾϚγϯΛ࣮ݱ͢Δ ༏लͳϓϩμΫτ ଟʑ͋Γ·͕͢
ࠓճࣄྫଟ͘ ೖ͍͢͠ 7BHSBOU 7JSUVBM#PYͰ͓ΛਐΊ·͢
7JSUVBM#PY
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXT NBD04-JOVYͷϓ ϥοτϑΥʔϜͰಈ࡞
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXTNBD04 -JOVYͷϓϥοτϑΥʔϜͰ ಈ࡞ wख࣋ͪͷ1$ͷதʹԾ తͳ1$Λ্ཱͪ͛ͯ ͘ΕΔ
7BHSBOU
7BHSBOU wԾϚγϯΫϥυ ্ͷϚγϯΛΑ͠ͳʹ ઃఆ্ཱͯͪ͛ͯ͘͠ ΕΔαϙʔτπʔϧ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏ 3VCZεΫϦϓτ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏3VCZε ΫϦϓτ wଞͷߏཧπʔϧͱ ͷڠௐ
ϝϦοτ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ wؒҧͬͯյͯ͠
σϝϦοτ wͦΕͳΓʹεϖοΫඞཁ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ wͨͿΜ͙͜͜Β͍ͳΒ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ w ͨͿΜ͙͜͜Β͍ͳΒ wཉΛݴ͑ϝϞϦ(#ͰετϨʔ δ44% w ͓ࡒʹ͍͞͠ͱԿͩͬͨͷ͔
͜͜·Ͱ·ͱΊ ઃඋࢿΛ͓͑ͭͭ͞ ීஈ͍ͷڥͷ ΠϯύΫτΛ͑ͨ։ ൃڥΛ࡞Γ͍ͨ ͱ͍͏͜ͱͰ͋Ε Ծڥͷߏங͕͓ ͢͢Ί
7JTVBM4UVEJP$PEF 3FNPUF%FWFMPQNFOU &YUFOTJPOͷհ
ԾڥͰίʔυΛॻ͘ͱ͖ ͥͻͬͯ΄͍͠
ฐࣾͰ1)14UPSN͕ਓؾͷΑ͏Ͱ͢ ͪ͜Β͍͍͢Ͱ͢Α
ࢲ74$PEF͕͖ ͳͷͰ74$PEFͰॻ͍͍͖ͯ·͠ΐ͏
͜ͷ࣌Ͱͷ ։ൃڥͷߏ
None
None
None
None
None
None
͜ͷลʹʮΠέςφΠײʯ ͋Γ·ͤΜʁ ೋॏཧ͍ͬͯ͏͔ɾɾɾ
None
ήετ͔ΒͷΞΫηε͕͍
None
None
ʅɾТɾʆ γϣϯϘϦοΫϦϯΫ
None
͜Ε͡Όҙຯ͕ͳ͍Αͳ͋
None
None
None
None
None
None
None
None
None
None
None
None
None
None
εοΩϦʂ
͜͜·Ͱ·ͱΊ 74$PEF 3FNPUF %FWFMPQNFOU ԾϚγϯΫϥ υͳͲͷϦϞʔτ։ ൃͷਏΈΛ૬Ϩϕ ϧͰܰݮͯ͘͠ΕΔ
τϯωϦϯάαʔϏεΛ ͓͏
։ൃ͕ਐΜͰ͖ͨΒ
$BTF"
։ൃதͷϓϩμΫτʹ͍ͭͯ Կ͔ఏҊ͍ͨ͠ͱ͖ʹ։ൃதͷ ಈ͖Λݟͤͨ΄͏͕खͬऔΓૣ͍ͱ͖ͬͯ͋Γ·ͤΜ͔ʁ
ϓϩμΫγϣϯڥҎ֎Ͱ ಈ࡞ڥΛ࡞ͬͯͦ͜ʹ ։ൃதϒϥϯνΛσϓϩΠ
͏࡞Δͱ͔ͦ͜·Ͱ େࣄ͡Όͳͯ͘ɾɾɾ Ͱݟ͍ͤͨײ
Ұ࣌తͰ͍͍
$BTF#
ϩʔΧϧϚγϯͰϒϥβ͔ΒݟΔ 8FCΞϓϦΛ IPTUTϑΝΠϧΛฤू͢Δ͜ͱͰ ֬ೝ͍ͯͨ͠
ػೳՃ
֎෦"1*ͱͷଓ
ίʔϧόοΫઌʹ IUUQTͰ7BMJEͳূ໌ॻΛ ࣋ͬͨϗεςΟϯά͕ඞਢ
None
ͦΜͳͱ͖ʹͬͯ΄͍͠ OHSPLͳͲͷτϯωϦϯάαʔϏε
τϯωϦϯάαʔϏεͱ wϩʔΧϧϚγϯ͔Β αʔϏεଆͷαʔόʹ ͭͳ͍ͩ44)ίωΫ γϣϯΛͬͯτϯω ϧԽ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ wαʔϏεଆ͔Βϗετ ໊͕ൃߦ͞ΕΔ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞Ε Δ wͦͷϗετ໊ʹ͔ͬ ͯϒϥβ͕
)551 T ௨৴Λ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷαʔ όʹͭͳ͍ͩ44)ίωΫγϣϯΛ ͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞ΕΔ w ͦͷϗετ໊ʹ͔ͬͯϒϥβ͕ )551
T ௨৴Λ͢Δ wαʔϏεଆ͕ϩʔΧϧϚ γϯͷίϯςϯπΛτϯ ωϧܦ༝Ͱऔಘͯ͠ 8FCϒϥβʹฦ͢
MPDBMIPTU͔Β IUUQTʜ ͱ͍͏63-Ͱίϯςϯπ͕ݟͤΒΕΔ
੍ݶ͋Δ wແྉϓϥϯ࣌ؒ͋ͨΓͷ)551ϦΫΤετʹ ੍ݶ͕͋Δ
63-΄΅͍ࣺͯ 44)ͷίωΫγϣϯ͕ ΒΕ͍ͯΔؒͷΈ༗ޮ
ڵຯ͕Θ͍ͨͷͰ
OHSPLҎ֎ʹ ྨࣅαʔϏεΛௐͯΈͨ
TFSWFP IUUQTTFSWFPOFU
ಛ wݻఆͷαϒυϝΠϯಠࣗυϝΠϯ͕ ͑Δ wηϧϑϗεςΟϯά༻ͷαʔόΞϓϦ ఏڙ͞Ε͍ͯΔ wࣗͰαʔόΛͨͯͯಠࣗυϝΠϯͰ ӡ༻Ͱ͖ͦ͏
MPDBMUVOOFM IUUQTMPDBMUVOOFMHJUIVCJPXXX
ಛ wΫϥΠΞϯτOQ̼ wαʔόଆͷΞϓϦOQN wTFSWFPಉ༷ࣗͰαʔό͕ͨͯΒΕΔ w࣌ؒଳʹΑΔ͔͠Εͳ͍͕एׯ͍ ͔ʁ
͜͜·Ͱ·ͱΊ OHSPLͳͲͷ αʔϏεͰ MPDBMIPTUͷ ΞϓϦέʔγϣϯΛ Πϯλʔωοτ্ʹ ެ։Ͱ͖Δ
݁ͼ
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
lશମͷ࿑ྗΛݮΒͨ͢Ίʹ खؒΛ੯͠·ͳ͍ؾ࣭z
͙͢ΕͨπʔϧΛॿ͚Δ πʔϧ͕͞͠ͷཱྀଓ͘
ͨͩ͠
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ πʔϧͦͷͷͷ༏ल͓͖ͯ͞͞ ࣗͷखʹೃછΉ͜ͱ͕Ұ൪େࣄ
ؒΛ૿ͦ͏
͓͋ͱ͕ΑΖ͍͠Α͏Ͱ