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
IoC-DI-DIContainer
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nozawa
September 21, 2023
Technology
0
22
IoC-DI-DIContainer
自分のIoCとDI、DIコンテナの理解力を確かめるべく、後輩に説明するシチュエーションを想定して
作ってみた資料です。
nozawa
September 21, 2023
Tweet
Share
More Decks by nozawa
See All by nozawa
introduction-to-devops-deploy
yuunozawa
0
29
introduction-to-devops-metrics
yuunozawa
0
29
introduction-to-devops
yuunozawa
0
72
ansible-demo
yuunozawa
2
42
event-loop
yuunozawa
2
14
ansible-learning
yuunozawa
2
20
cool-URI-dont-change
yuunozawa
2
30
AWS-cloud-practitioner
yuunozawa
2
21
Other Decks in Technology
See All in Technology
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
460
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
320
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
120
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
240
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
1
2.7k
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
Red Hat OpenStack Services on OpenShift
tamemiya
0
120
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
130
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.5k
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
130
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
650
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
4.9k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
66
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Site-Speed That Sticks
csswizardry
13
1.1k
So, you think you're a good person
axbom
PRO
2
1.9k
Paper Plane (Part 1)
katiecoart
PRO
0
4.3k
The Cult of Friendly URLs
andyhume
79
6.8k
Exploring anti-patterns in Rails
aemeredith
2
250
[SF Ruby Conf 2025] Rails X
palkan
1
760
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
98
Navigating Weather and Climate Data
rabernat
0
110
Transcript
ᖒ *P$ͱ%*ɺ%*ίϯςφΛઆ໌͢Δ ษڧձ༻
*P$ͱԿ͔ ֓ཁ w *OWFSTJPOPG$POUSPM ੍ޚͷస ͷ͜ͱ w ʮґଘؔΛٯసͤ͞Δʯ͜ͱΛࢦ͢ *P$*OWFSTJPOPG$POUSPMͷུͰ͢ɻ ຊޠʹ༁ͯ͠ʮ੍ޚͷసʯͱͳΓɺཧղ͠ʹ͍͘··Ͱ͢ɻ
͜͜ͰʮґଘؔΛٯసͤ͞Δʯ͜ͱΛࢦ͢ͱཧղ͍͚ͨͩΕͱࢥ͍·͢ɻ ͰʮґଘʯͱԿͰ͠ΐ͏͔ɻʮґଘʯ͕͔ΕࣗͣͱͦΕΛʮٯసͤ͞Δʯͱ͍͏ҙຯ͕͔ͬͯ͘Δͱࢥ͍·͢ɻ ͜ͷൃදͰαϯϓϧίʔυΛݩʹ·ͣʮґଘʯʹ͍ͭͯཧղ͢Δ͜ͱΛࢦ͠·͢ɻ
*P$ͱԿ͔ -JHIU#VMC ిٿ Λ4XJUDIͰૢ࡞͢Δαϯϓϧίʔυ QVCMJDDMBTT-JHIU#VMC\ QVCMJDWPJEPO \ TZTUFNPVUQSJOUMO lޫΓ·͢z
^ QVCMJDWPJEP ff \ TZTUFNPVUQSJOUMO lফ͑·͢z ^ ^ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU#VMCCVMCOFX-JHIU#VMC WPJEUVSO0O \ CVMCPO ^ WPJEUVSO0 ff \ CVMCP ff ^ ^ ʮґଘʯΛཧղ͢ΔͨΊͷαϯϓϧίʔυ͕ͪ͜ΒͰ͢ɻ αϯϓϧίʔυͰೋͭͷΫϥε͕ొ͠·͢ɻ Ұͭ-JHIU#VMCʢిٿʣΫϥεͰ͢ɻ -JHIU#VMCΫϥεೋͭϝιουΛ࣋ͪ·͢ɻ ిؾ͕͍ͭͨঢ়ଶΛද͢POϝιουͱফ͑ͨঢ়ଶΛද͢P ff ϝιουͰ͢ɻ ͏Ұͭ4XJUDIΫϥεͰ͢ɻిؾͷεΠονͷ͜ͱͰ͢ɻ ిؾΛΧνΧνͱ0/0''͢ΔͨΊͷUVSO0OϝιουͱUVSO0 ff ϝιουΛ͍࣋ͬͯ·͢ɻ 4XJUDIΫϥεͷϝϯόఆٛΛݟ͍ͯͩ͘͞ɻ -JHIU#VMCΫϥεΛΠϯελϯεԽͯ͠ϝϯόͱͯ͠อ༗͍ͯ͠·͢ɻ ·ͨɺఆٛ͞ΕͨϝϯόUVSO0O UVSO0 ff ϝιουͰ༻͞Ε͍ͯ·͢ɻ ͜ͷ࣮4XJUDIΫϥε͔Β-JHIU#VMCΫϥεͷґଘΛද͍ͯ͠·͢ɻ UVSO0O UVSO0 ff ϝιουͰ-JHIU#VMCΠϯελϯεΛ༻ͯ͠ɺPO P ff ϝιουΛ࣮ߦ͠Α͏ͱ͍ͯ͠·͢ͷͰɺ-JHIU#VMCΠϯελϯε͕ଘࡏ͠ͳ͍ɺ͘͠ -JHIU#VMCΠϯελϯε͡Όͳ͚ΕిؾΛΧνΧνͱ0/0''͢Δ͜ͱ͕Ͱ͖·ͤΜɻ ʮͳ͍ͱͩΊʯͳͷͰʮґଘ͍ͯ͠Δʯͱݴ͑·͢ɻ
ɿΫϥεؒͷґଘ͕ڧ͍ ͜ͷεΠονిٿҎ֎ͷ ໌͔ΓΛ͚ͭΒΕͳ͍ ෆศ ͋ΔΫϥεಉ͕࢜ґଘঢ়ଶʹ͋Δͱ͕ى͜Δ͜ͱ͕͋Γ·͢ɻ ྫ͑͜ͷྫͰεΠονిٿͷͨΊʹઃܭ͞Ε͍ͯΔͷͰɺ͠ܬޫ౮ͷిؾΛ͚͍ͭͨ߹ɺ͜ͷεΠονʹཱͨͳ͘ͳͬͯ͠·͍·͢ɻ ͜ͷαϯϓϧͷΑ͏ͳΫϥεؒͷؔΛࢦͯ͠ʮ͋ΔΫϥε"͕͋ΔΫϥε#ʹґଘ͍ͯ͠ΔʯͷΑ͏ʹݴ͍·͢ɻ͜ͷαϯϓϧͷέʔεͰʮ4XJUDIΫϥε͕ -JHIU#VMCΫϥεʹڧΊʹґଘ͍ͯ͠Δʯͱݴ͑·͢ɻ·ͨɺʮґଘੑ͕ڧ͍ͱมߋʹऑ͍ʯͱݴ͑ͦ͏Ͱ͢ɻ ͏͠Β͘ɺ͜ͷαϯϓϧϓϩάϥϜʹ͓͖߹͍͍ͩ͘͞ɻ ଓ͍ͯͷઆ໌Ͱɺ4XJUDIΫϥεΛ৭ʑͳর໌ث۩ʹରԠͰ͖ΔΑ͏ʹมߋʹڧͯ͘͠Έ·͢ɻ
*P$ͱԿ͔ -JHIU4PVSDF ԿΒ͔ͷর໌ث۩ Λ4XJUDIͰૢ࡞͢Δαϯϓϧίʔυ QVCMJDJOUFSGBDF-JHIU4PVSDF\ WPJEPO WPJEP ff
^ ࣍ͷεϥΠυʹίʔυ͕ଓ͖·͢ ͔͜͜ΒͷαϯϓϧίʔυͰɺҰͭΫϥε͕૿͑ɺͭͷΫϥε͕ొ͠·͢ɻ ͏ͪೋͭઌ΄Ͳͱಉ͡Ͱ͕͢ɺͭͷมߋͱͯ͠ɺ*OUFGBDF͕Ճ͞Ε·ͨ͠ɻ ͜ͷΠϯλʔϑΣʔεԿΒ͔ͷর໌ث۩Λࢦ͍ͯ͠ΔͷͰɺ-JHIU4PVSDFͱݺͼ·͢ɻ -JHIU4PVSDFΠϯλʔϑΣʔεPOͱP ff ͱ͍͏ೋͭͷϝιουΛ࣋ͪ·͢ɻ ͜Ε*OUFSGBDFͳͷͰɺϝιουએݴͷΈ͞Ε͓ͯΓɺநతʹͳ͍ͬͯ·͢ɻ
*P$ͱԿ͔ -JHIU4PVSDF ԿΒ͔ͷর໌ث۩ Λ4XJUDIͰૢ࡞͢Δαϯϓϧίʔυ QVCMJDDMBTT-JHIU#VMCJNQMFNFOUT-JHIU4PVSDF\ !0WFSSJEF QVCMJDWPJEPO \ TZTUFNPVUQSJOUMO lޫΓ·͢z
^ !0WFSSJEF QVCMJDWPJEP ff \ TZTUFNPVUQSJOUMO lফ͑·͢z ^ ^ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU4PVSDFMJHIU4PVSDF QVCMJD4XJUI -JHIU4PVSDFMJHIU4PVSDF \ UIJTMJHIU4PVSDFMJHIU4PVSDF ^ WPJEUVSO0O \ MJHIU4PVSDFPO ^ WPJEUVSO0 ff \ MJHIU4PVSDFP ff ^ ^ ଓ͍ͯɺ-JHIU#VMCΫϥε͕-JHIU4PVSDFΠϯλʔϑΣʔεΛJNQMFNFOUT ࣮ ͢ΔΑ͏ʹͳ͍ͬͯ·͢ɻ ͜ΕʹΑΓʮর໌ث۩ͷ࣮ͱͯ͠ͷిٿʯͱ͍͏ҙຯ߹͍ʹͳΓ·͢ɻ -JHIU#VMCΫϥεͷมߋ͜Ε͚ͩͰ͢ɻ ࠷ޙʹ4XJUDIΫϥεͷมߋͰ͢ɻ ·ͣϝϯόͷܕ͕-JHIU#VMCΫϥεͰͳ͘-JHIU4PVSDFΠϯλʔϑΣʔεʹͳ͍ͬͯ·͢ɻ -JHIU4PVSDFΠϯλʔϑΣʔεԿΒ͔ͷর໌ث۩Λࢦ͍ͯ͠·͢ɻ ઌ΄Ͳ͜ͷϝϯόͷఆٛͰґଘઌ͕-JHIU#VMCΫϥεʹఆ·͍ͬͯ·ͨ͠ɻ ݱࡏ-JHIU4PVSDFΠϯλʔϑΣʔεʹͳ͍ͬͯΔͨΊɺ-JHIU4PVSDFΠϯλʔϑΣʔεΛJNQMFNFOUT͍ͯ͠ΔΫϥεͷΦϒδΣΫτશͯ͜ͷܕͷมʹೖͰ͖· ͢ɻ ͦͯ͠࠷ॏཁͳมߋͱͯ͠ίϯετϥΫλ͕Ճ͞Ε͍ͯ·͢ɻ ίϯετϥΫλ෦Ͱࣗͷ-JHIU4PVSDFܕͷϝϯόΛઃఆ͍ͯ͠·͢ɻ ݴ͍͑Δͱɺ-JHIU4PVSDFͷ࣮ΫϥεͷΠϯελϯεΛίϯετϥΫλͷݺͼग़͠ݩ͔Βઃఆͯ͠Β͑ΔΑ͏ʹͳ͍ͬͯ·͢ɻ ͜ΕͰɺίϯετϥΫλ͔Β͖ͳর໌ث۩Λͯ͠Β͑Εͦͷর໌ث۩ͷૢ࡞͕Ͱ͖Δ ॊೈͳεΠον͕ग़དྷ্͕Γ·ͨ͠ɻ
*P$ͱԿ͔ ͭͷαϯϓϧίʔυͷҧ͍Λ·ͱΊΔͱ มߋɿ *OUFSGBDFΛՃ -JHIU#VMCΫϥε͕*OUFSGBDFΛ࣮ 4XJUDI͕ґଘઌͷΦϒδΣΫτΛݺͼग़͠ݩ͔Βઃఆͯ͠Β͍ͬͯΔ Կ͕ྑ͘ͳ͔ͬͨɿΫϥεؒͷґଘ͕ऑ͘ͳΓมߋʹڧ͘ͳͬͨ
͜͜·Ͱͷ·ͱΊΛ͠·͢ɻ ͜͜·ͰͰʮґଘʯͱԿ͔ʹ͍ͭͯઆ໌͖ͯ͠·ͨ͠ɻ αϯϓϧίʔυͷൺֱΛ௨ͯ͠ʮґଘੑ͕ߴ͍ʯྫͱʮґଘੑ͕͘ͳͬͨʯྫΛ͓ݟͤ͠·ͨ͠ɻ ྫΛ௨͠ɺґଘੑ͕ߴ͍͔͍͔Ͱมߋͷڧ͕͞มΘΔ͜ͱΛ͝આ໌͠·ͨ͠ɻ Ͳ͏ͯ͠ґଘੑ͕Լ͕͔ͬͨεϥΠυʮมߋʯʹهࡌͷ༰Λ࣮ࢪͨͨ͠ΊͰ͋Γɺ ॏཁͳґଘઌΛ֎෦͔Βઃఆ͢ΔΑ͏ʹͨ͜͠ͱͰ͢ɻ ґଘ͕͔ͬͨͱ͜ΖͰ͏Ұ*P$͕ԿͰ͔͋ͬͨ֬ೝ͍͖͍ͯͨ͠ͱࢥ͍·͢ɻ
*P$ͱԿ͔ ·ͱΊ w *OWFSTJPOPG$POUSPM ੍ޚͷస ͷ͜ͱ w ʮґଘؔΛٯసͤ͞Δʯ͜ͱΛࢦ͢ 74 4XJUDIΫϥε͕ґଘઌΛܾΊΔ
4XJUDIΫϥεґଘઌΛܾΊͳ͍ ݺͼग़͠ଆʹܾΊͤ͞Δ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU#VMCCVMCOFX-JHIU#VMC WPJEUVSO0O \ CVMCPO ^ WPJEUVSO0 ff \ CVMCP ff ^ ^ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU4PVSDFMJHIU4PVSDF QVCMJD4XJUI -JHIU4PVSDFMJHIU4PVSDF \ UIJTMJHIU4PVSDFMJHIU4PVSDF ^ WPJEUVSO0O \ MJHIU4PVSDFPO ^ WPJEUVSO0 ff \ MJHIU4PVSDFP ff ^ ^ ಄Ͱ*P$ͱʮґଘؔΛٯసͤ͞Δʯ͜ͱΛࢦ͢ͷͰ͋Δͱ͓͑͠·ͨ͠ɻ ઌ΄Ͳͷαϯϓϧιʔεͷ4XJUDIΫϥεΛࢥ͍ग़͍ͯͩ͘͠͞ɻ ݩʑɺ-JHIU#VMCܕͷมΛϝϯόͱͯ࣋ͭ͜͠ͱͰɺґଘઌΛ4XJUDIΫϥε͕ܾࣗΊ͍ͯ·͕ͨ͠ɺ มߋʹڧ͍ίʔυʹͨ͠ޙɺ4XJUDIΫϥεґଘઌΛݺͼग़͠ݩʹܾΊͯΒ͏Α͏ʹͳΓ·ͨ͠ɻ ґଘઌ͕ܾ·Δ࣌ͷ͖͕ٯʹͳΔײ͕͡Θ͔Γ·͢Ͱ͠ΐ͏͔ʁ
*P$ͱԿ͔ ґଘؔͷٯసΛࢹ֮తʹ͢Δͱ 4XJUDIΫϥεΛ ΠϯελϯεԽ͢ΔԿ͔ QVCMJDDMBTT-JHIU#VMC\ QVCMJDWPJEPO \ TZTUFNPVUQSJOUMO lޫΓ·͢z
^ QVCMJDWPJEP ff \ TZTUFNPVUQSJOUMO lফ͑·͢z ^ ^ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU#VMCCVMCOFX-JHIU#VMC WPJEUVSO0O \ CVMCPO ^ WPJEUVSO0 ff \ CVMCP ff ^ ^ QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU4PVSDFMJHIU4PVSDF QVCMJD4XJUI -JHIU4PVSDFMJHIU4PVSDF \ UIJTMJHIU4PVSDFMJHIU4PVSDF ^ WPJEUVSO0O \ MJHIU4PVSDFPO ^ WPJEUVSO0 ff \ MJHIU4PVSDFP ff ^ ^ ґଘੑͷ͖Λࢹ֮తʹҹͰදݱͯ͠͝આ໌͠·͢ɻ *P$ΛऔΓೖΕ͍ͯͳ͍ɺ࠷ॳͷαϯϓϧιʔεͰґଘઌΛ4XJUDIΫϥε͕ܾࣗΊ͍ͯ·ͨ͠ɻ4XJUDIΫϥε͕ґଘઌΛܾΊ͍ͯΔͷͰҹґଘઌͷ-JHIU#VMCΫ ϥεʹ৳ͼ·͢ɻ Ұํɺ*P$ΛऔΓೖΕͨαϯϓϧιʔεͰɺ4XJUDIΫϥεͷґଘઌʮ4XJUDIΫϥεΛΠϯελϯεԽ͢ΔԿ͔ʯʹܾΊͯΒ͍ͬͯ·͢ɻʮԿ͔ʯͱ͍͏ͷίϯε τϥΫλͰɺΠϯελϯεϝιουͰɺ.BJOؔͰԿͰΑ͍ͱ͍͏ҙຯͰ͢ɻ4XJUDIΫϥε͕ґଘઌΛܾΊͯΒ͍ͬͯΔΠϝʔδͰ͢ͷͰɺҹٯʹͳΓ ·ͨ͠ɻ ґଘͷ͖Λද͢ҹ͕ٯʹͳͬͨͷͰɺʮґଘ͕ؔٯసͨ͠ʯͱ͍͑·͢ɻ ͜Ε͕*P$Ͱ͢ɻ
QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU4PVSDFMJHIU4PVSDF QVCMJD4XJUI -JHIU4PVSDFMJHIU4PVSDF \ UIJTMJHIU4PVSDFMJHIU4PVSDF ^ WPJEUVSO0O \
MJHIU4PVSDFPO ^ WPJEUVSO0 ff \ MJHIU4PVSDFP ff ^ ^ %*ͱԿ͔ w %FQFOEFODZ*OKFDUJPO ґଘੑͷೖ ͷ͜ͱ w ͋ΔΫϥεͷ۩ମతͳʮґଘੑͷೖϝΧχζϜʯͷ͜ͱΛࢦ͢ *P$ͷԆͰཧղͰ͖Δ *P$ΛཧղͰ͖͍ͯΕɺ%*ʹ͍ͭͯͷཧղൺֱత؆୯ʹͳΓ·͢ɻ %*ຊޠʹ͢ͱʮґଘੑͷೖʯͰ͢ɻ *P$ΛऔΓೖΕͨ4XJUDIΫϥεΛ࠶ར༻͠·͢ɻ 4XJUDIΫϥεͷίϯετϥΫλͰ͕͢ɺ*P$ͷ࣮ફʹΑΓґଘઌͷ-JHIU4PVSDFΦϒδΣΫτΛίϯετϥΫλΛ௨ͯ͠ݺͼग़͠ݩ͔Βઃఆͯ͠Β͑ΔΑ͏ʹ ͳ͍ͬͯ·͢ɻ ͜ͷɺʮґଘੑΛ֎෦͔Βೖ͢Δ͜ͱʯΛ%*ͱݴ͍·͢ɻ %*ʹछྨ͕͋Γɺ࣮ํ๏छྨʹΑͬͯҟͳΓ·͢ɻ εϥΠυͷ%*ίϯετϥΫλΛ͏ͷͰʮίϯετϥΫλΠϯδΣΫγϣϯʯͱݴ͍·͢ɻଞʹ4FUUFSϝιου͔ΒґଘੑΛೖͤ͞ΔʮηολʔΠϯδΣΫγϣ ϯʯͳͲ͕͋Γ·͢ɻ
%*ͱԿ͔ ґଘੑͷೖΛࢹ֮తʹ͢Δͱ 4XJUDIΫϥεΛ ΠϯελϯεԽ͢ΔԿ͔ %* QVCMJDDMBTT4XJUDI\ QSJWBUF-JHIU4PVSDFMJHIU4PVSDF QVCMJD4XJUI -JHIU4PVSDFMJHIU4PVSDF
\ UIJTMJHIU4PVSDFMJHIU4PVSDF ^ WPJEUVSO0O \ MJHIU4PVSDFPO ^ WPJEUVSO0 ff \ MJHIU4PVSDFP ff ^ ^ *P$ͷઆ໌ͰͬͨਤΛ࠶༻͢Δͱɺҹͷ෦͕%*ͱͳΓ·͢ɻ
%*ίϯςφͱԿ͔ %*ͷԆͰཧղͰ͖Δ w Ϋϥεಉ࢜ͷґଘؔΛࣗಈతʹղܾ͢Δͷ w %*ίϯςφͲͷΫϥε͕ͲͷΫϥεʹґଘ͢Δ͔ղੳ͢Δ w %*ίϯςφ*P$ͱ%*ͷݪଇΛ࣮ݱ͢ΔͨΊͷπʔϧ IUUQTLB[LODPNQPTUJOUSPTQSJOHJPDDPOUBJOFS ࡶଟͳΦϒδΣΫτΛࣗͷཧԼʹ
ஔ͖ͦΕΒΛڠௐͤ͞ΔΦϒδΣΫτ ίϯςφ %*·ͰཧղͰ͖ͨͱ͜ΖͰ%*ίϯςφͷઆ໌Λ؆୯ʹ͠·͢ɻ %*ʹʮίϯςφʯͱ͍͏ݴ༿͕͖ͬͭ͘·ͨ͠ɻ 4FSWMFUίϯςφͱ͔ɺ&+#ίϯςφͱ͔ɺͷ+BWBք۾ͰԿ͔ͱʮίϯςφʯͱ͚͍ͭͯͨͱɺ͋ΔهࣄͰհ͍ͯ͠·ͨ͠ɻ ͦͷهࣄͷݴ༿ΛआΓͯɺ͜͜ͰʮίϯςφʯʮࡶଟͳΦϒδΣΫτΛࣗͷཧԼʹஔ͖ͦΕΒΛڠௐͤ͞ΔΦϒδΣΫτʯͱ͠·͢ɻ ίϯςφΛ͜͏ଊ͑Δͱɺʮ%*ίϯςφʯʮΫϥεಉ࢜ͷґଘؔΛࣗಈతʹղܾ͢Δͷʯͱ͍͏Πϝʔδʹͳ͖ͬͯ·͢Ͱ͠ΐ͏͔ʁ Ҏ্Ͱ*P$ɺ%*ɺ%*ίϯςφʹ͍ͭͯͷઆ໌ΛऴΘΓ·͢ɻ