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
nozawa
September 21, 2023
Technology
0
12
IoC-DI-DIContainer
自分のIoCとDI、DIコンテナの理解力を確かめるべく、後輩に説明するシチュエーションを想定して
作ってみた資料です。
nozawa
September 21, 2023
Tweet
Share
More Decks by nozawa
See All by nozawa
introduction-to-devops-metrics
yuunozawa
0
12
introduction-to-devops
yuunozawa
0
10
ansible-demo
yuunozawa
2
15
event-loop
yuunozawa
2
8
ansible-learning
yuunozawa
2
7
cool-URI-dont-change
yuunozawa
2
15
AWS-cloud-practitioner
yuunozawa
2
9
DDD-4layers
yuunozawa
2
24
about-script-language
yuunozawa
2
10
Other Decks in Technology
See All in Technology
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
260
アジャイル開発とスクラム
araihara
0
170
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
230
株式会社EventHub・エンジニア採用資料
eventhub
0
4.3k
Datadog APM におけるトレース収集の流れ及び Retention Filters のはなし / datadog-apm-trace-retention-filters
k6s4i53rx
0
330
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
160
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
RSNA2024振り返り
nanachi
0
560
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
220
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
0
120
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.4k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Bash Introduction
62gerente
611
210k
We Have a Design System, Now What?
morganepeng
51
7.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Why Our Code Smells
bkeepers
PRO
336
57k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Being A Developer After 40
akosma
89
590k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
How GitHub (no longer) Works
holman
314
140k
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$ɺ%*ɺ%*ίϯςφʹ͍ͭͯͷઆ໌ΛऴΘΓ·͢ɻ