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
オブジェクト指向のこころ: 第25章 / DESIGN PATTERNS EXPLAINED:...
Search
hideki kinjyo
PRO
March 03, 2022
Programming
0
160
オブジェクト指向のこころ: 第25章 / DESIGN PATTERNS EXPLAINED: chapter-25
会社で「オブジェクト指向のこころ」の読書会をやっています
hideki kinjyo
PRO
March 03, 2022
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
460
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
240
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
3
460
SPLから始める「データ構造」入門
o0h
PRO
7
1.7k
PHPUnit11の新しい仲間たち
o0h
PRO
3
330
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
60
20k
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
140
phpunit/php-code-coverageって何をしてるんだ #phperkaigi
o0h
PRO
3
1.2k
Composerを便利に使うために私がやっていること #phperkaigi
o0h
PRO
1
2.4k
Other Decks in Programming
See All in Programming
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
110
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
1
290
みんなでプロポーザルを書いてみた
yuriko1211
0
260
Contemporary Test Cases
maaretp
0
140
最新TCAキャッチアップ
0si43
0
140
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.3k
役立つログに取り組もう
irof
28
9.6k
Jakarta EE meets AI
ivargrimstad
0
610
RubyLSPのマルチバイト文字対応
notfounds
0
120
cmp.Or に感動した
otakakot
2
150
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
600
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
95
5.2k
The Language of Interfaces
destraynor
154
24k
Optimizing for Happiness
mojombo
376
70k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Thoughts on Productivity
jonyablonski
67
4.3k
How to Ace a Technical Interview
jacobian
276
23k
For a Future-Friendly Web
brad_frost
175
9.4k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Agile that works and the tools we love
rasmusluckow
327
21k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Transcript
ୈ25ষ σβΠϯύλʔϯͷ͓͞Β͍: ૯ׅͱࠓޙ ՝ਤॻ: ΦϒδΣΫτࢦͷ͜͜Ζ: σβΠϯύλʔϯͱͱʹֶͿ
ΦϒδΣΫτࢦݪଇͷαϚϦ
ΦϒδΣΫτͱɺదͳΛ͏ ͷͰ͋Δ
ʁ • “λεΫΛ࣮ߦ͢Δٛɺ·ͨใΛ͍࣋ͬͯΔٛ” • ҎԼͷ3ͭͷओཁͳؚ߲͕·ΕΔ • ΦϒδΣΫτ͕ߦ͏ಈ࡞ • ΦϒδΣΫτ͕࣋ͭࣝ •
ΦϒδΣΫτ͕ଞʹӨڹΛ༩͑Δओཁͳஅ
ʁ • “Ϋϥε୯ҰͷతΛ࣋ͭͷͩͱߟ͑ͯΈΔͱɺΫϥε ͕͢Δ͜ͱʢΫϥεͷΑΓ۩ମతͳʣɺ͓ͷͣͱͦ ͷతΛՌͨ͢ͷͱͳΓ·͢ɻ” • ΫϥεͷύϒϦοΫϝιουɺ ͷઆ໌ͱͯ͠ղऍͰ͖Δ • ύϒϦοΫΠϯλʔϑΣʔεɺ
ΫϥεͷΛ໌֬ʹड़Δܖॻ
ΦϒδΣΫτͱɺదͳΛ͏ͷͰ͋Δ ߨ ࢣ େֶӃੜ ֶੜ ߨٛΛ͢ΔΑ ߨٛΛड͚ΔΑ ڭࣨΛҠ ಈ͢ΔΑ ࣌ؒ
ׂ Ξϯέʔτ ճऩ͢ΔΑ ߨٛͷ࣌ؒͱ ڭࣨΛࣔ͢Α
ΦϒδΣΫτɺࣗΒʹର͢ΔΛ༗ ͍ͯ͠Δ
Λ͏ͱɺΛ༗͢Δͱ͍͏͜ͱͰ͢ • OOP/OODʮΦϒδΣΫτಉ͕࢜࿈ܞ͋ͬͯ͠ɺγεςϜΛ࡞ Γ্͛Δʯͱ͍͏ൃ • ͋ΒΏΔΦϒδΣΫτʮଞऀ͔Βظ͞ΕΔ݁ՌΛ͞ͳ͍ͱ ͍͚ͳ͍ʂʂʯͱ͍͏ͷ͕େલఏʹͳΔ • ʮѪΒ͍͠খಈΦϒδΣΫτʯΛཁٻͨ͠ͷʹɺʮΞϑϦΧ κΑΓσΧ͍͔ΒՈʹೖΒͳ͍ͶʯͩͱγεςϜ͕ഁ͢Δ
• ՝͞ΕͨΛՌͨ͢ɺͱ͍͏Λཁ͍ͯ͠Δ • 㲈త͕͋Δ͔Βͦ͜ɺΦϒδΣΫτ͕ੜΈग़͞Ε͍ͯΔ
ΦϒδΣΫτɺࣗΒʹର͢ΔΛ༗͍ͯ͠Δ ߨ ࢣ େֶӃੜ ߨٛΛ͢ΔΑ Ξϯέʔ τճऩͨ͠Γ ͳͨ͘͠Γ͢ΔΑ Ξϯέʔτճऩ్த ʹFYJU͢ΔΑ
͜ΕͰࣄޙ݅Λຬͨͤͳ͍ʂ
ΧϓηϧԽͱɺ͋ΒΏΔछྨͷӅṭΛ ҙຯ͍ͯ͠Δ
ΧϓηϧԽ ͳʹɾͳΜͰ • ΧϓηϧԽʮ͋ΒΏΔͷͷӅṭ(P18)ʯ • “ΧϓηϧʢӳޠɾϑϥϯεޠɿCapsuleɺυΠπޠɿKapselʣͱɺ ʮখശʯΛҙຯ͢Δϥςϯޠͷ capsula ʹ༝དྷ͠ɺԿ͔Λ٧Ί͓ͯͨ͘ Ίͷ༰ثͷ͜ͱΛද͢ɻ”
https://ja.wikipedia.org/wiki/Χϓηϧ • ར༻ऀʹରͯ͠ɺʮ෦ΛӅ͢ʯʮެ։͢ΔใΛඞཁ࠷ݶͷͷʹ ݶఆ͢Δʯ • ΦϒδΣΫτࢦ͕Γ͍ͨ͜ͱ = ߴڽूɾૄ݁߹ • ΧϓηϧԽʮૄ݁߹ʯΛՃͤ͞ΔͨΊͷ༗༻ͳखஈ
σʔλͷӅṭ • ʮσʔλΛӅṭ͢Δͷ͕େࣄʯͱ͍͏ΑΓɺ ʮৄࡉΛଞऀؒͰྲྀ௨ͤ͞ͳ͍ʯͷ͕ྑ͍ઃܭʹͭͳ͕Δɺͱ͍͏ ײ֮ͷํ͕௫Έ͍͔͢ʁ • privateΛଚॏ͠·͠ΐ͏ɾɾʂ • ʮࡉ͔͘ΕΔʯ͜ͱʮࡉ͔͍ͬͯ͘Δʯʹܨ͕ͬͯɺ͢Δ ͱʮࡉ͔͍͜ͱʹΛ࣋ͭʯ͜ͱʹܨ͕Γ͔Ͷͳ͍
• ٯʹʮࡉ͔͍͜ͱΒͳ͍ʯͩͱɺ͓ޓ͍ͷʮຊʹඞཁͳ͜ ͱɺՌ͍ͨͨ͠తʯʹج͍ͮͨؔੑΛங͚Δ • Βͳ͍ํ͕ྑ͔ͬͨ͜ͱɺͨ͘͞Μ͋Γ·͢ΑͶɻઃܭಉ͡
࣮ͷӅṭ • ֤ΦϒδΣΫτͷಠཱੑΛकΓ·͠ΐ͏ʂʂతͳ • ʮ˓˓Λڭ͑ͯԼ͍͞ɺͨͩͦ͠ͷաఔ͋ͳͨʹҕͶ· ͢ʯ • ࣮͕Ӆṭ͞Ε͍ͯͳ͍ͱʁ => ΑΓʮखଓ͖ܕʯͬΆ͘ͳͬͨΓͦ͠͏
• ͋Δ͖ؔ: ʮXͱݴͬͨΒYʹ͍ͭͯڭ͑ͯʯ • ා͍ؔ: ʮ(Yʹ͍ͭͯΓ͍͔ͨΒ)d->a->gg->daͯ͠ʯ
ΫϥεͷӅṭ • લఏͱͯ͠ʮతʹద͏ͳΒɺԿͷΦϒδΣΫτͰ͑͑ ͰʯతͳελϯεͰ͍Δͱྑ͍ઃܭʹͳΓ͍͢ • ͦ͜Ͱ • ʮతʯΛந/Ծ/ΠϯλʔϑΣΠεͰఆٛͯ͠ɺ • ࣮/۩ମ(۩)ʹ͍ͭͯʮΒͳ͍͠ɺ͓ͤʂʯͰ
ࡁΉΑ͏ʹक͍ͬͯ͘
ઃܭͷӅṭ • (Facadeύλʔϯͱ͔ʹݟΒΕΔΑ͏ͳɺʮ۩ମతͳத ʹ͍ͭͯӅͭͭ͠ɺར༻ऀ͕ఏڙͰ͖Δใ(Ҿɺ input)Λड͚औͬͯࣗͷࣝ(ͱҕৡ)ʹΑͬͯɺతʹ͔ ͳ͏݁Ռ(output)Λฦ͢ʯΈ͍ͨͳΛࢦ͍ͯ͠Δ͔ͳʁ ͱࢥͬͨ) • օ͞ΜͲ͏ࢥ͍·ͨ͠ʁ
࣮ମԽͷӅṭ • ΦϒδΣΫτͷੜɺίϯετϥΫτʹ͍ͭͯʮతʹΒͳͯ͘ ͍͍ײ͡ʹ͢Δʯͱ͍ͬͨ • Factoryύλʔϯ • ͳͥʁ • ʮੜ͢Δʯͱ͍͏γʔϯʹ͓͍ͯɺ(ࣗڵຯͳ͍ͷʹ૬खͷ
߹ʹै͏ͨΊʹʂʂ)ͱͯଟ͘ͷใΛඞཁͱ͢Δɺͱ͍͏͜ͱ ͕ଟ͍ • ͜Ε͕ෆཁͳ݁߹ΛͨΒ͢
ৼΔ͍σʔλʹଘࡏ͢Δྲྀಈతཁૉ ɺڞ௨ੑ/ՄมੑੳʹΑͬͯநԽ ͢Δ
ڞ௨ੑɺՄมੑ • ڞ௨ੑ: ෳͷଘࡏʹஔ͍ͯීวతʹଘࡏ͢Δ(ৼΔ͍) • Մมੑ(ྲྀಈੑɺมಈੑ): ଞʹͳ͍ɺࠩҟ͕͋Δɺಠࣗੑͱͯ͠ଘࡏ͢Δ(ৼΔ͍) • ڞ௨ੑΛݟൈ͍ͯ(֓೦Ϩϕϧ)ɺͦΕΛநͱͯ͠ද͍ͯ͠ ͘(༷Ϩϕϧ)ɻʮڞ௨ੑʹऩ·Βͳ͍෦ʯΛ۩ͱͯ͠
࣮͢Δ(࣮Ϩϕϧ)
ʮڞ௨ੑΛநʹʯͰͳ͔ͬͨΒԿ͕ʁ • ྫ͑ʮখ͍͞ϊʔτʯͱʮେ͖͍ϊʔτʯʮେখΛ݉ͶΔʯͷͰɺந /ܧঝؔʹ͍͔ͨ͠ʁ • ڞ௨͍ͯ͠Δͷʮϊʔτੑʯͷͣ • ʮࣈ࿅शாʯͱʮࣗ༝ாʯʁ • ʮݘʯʮೣʯʮΫδϥʯͷؔʁ
• ੜ্ֶͷʮᄡೕྨʯ͕ɺఏڙ͢ΔγεςϜ෦ʹ͓͚Δʮతʯͷ؍͔ Βʮҙຯͷ͋Δڞ௨ੑʯͳͷ͔ʁ • ʮݘʯʮೣʯʮΠϯίʯͷؔʁ • ʮѪ؝ಈʯʮ໐͘(ੜ)ʯͱ͍͏ڞ௨ੑ͕େࣄʁ • ʮࣂ͍ํʯʮ໐͖ํʯՄมੑʹͳΔ
େֶӃੜ ֶੜ ߨٛΛड͚ΔΑ ڭࣨΛҠ ಈ͢ΔΑ Ξϯέʔτ ճऩ͢ΔΑ ߨٛΛड͚ΔΑ େֶӃੜֶੜͷόϦΤʔγϣϯ͔ʁ (ߨٛΛฉ͘༁Ͱͳ͍)TAͲ͏͢Δʁ
ߨٛΛࢹʹདྷ͓ͨҒ͍͞ΜͲ͏ʁ
ʮಉ͡తʹجͮ͘ཁૉʯͱ ଊ͑ΒΕͦ͏ʁ େֶӃੜ ֶੜ ߨٛΛड͚ΔΑ ڭࣨΛҠ ಈ͢ΔΑ Ξϯέʔτ ճऩ͢ΔΑ ߨٛΛड͚ΔΑ
ߨٛΛฉ͚ Δౕ ߨٛͷ ӡӦαϙʔ τౕ डߨ४උͰ ͖Δౕ ڞ௨ੑͷநग़ʹͱͮ͘நԽ
ΠϯλʔϑΣΠεΛ༻͍࣮ͯ͢Δ
InterfaceΛඞͣ͏ʁ • ίίͰࢦ͍ͯ͠Δͷɺඞͣ͠ݴޠػೳ্ͷʮInterfaceʯͱ ͍͏ҙຯͰͳ͍ɻͣɻ • ΠϯλʔϑΣΠε = ʮԿΛೖΕͨΒʯʮ(ԿΛͯ͠)ԿΛฦ͔͢ʯ • ݴ͍͑Δͱʮ͍ํʯʹΑͬͯʮԿ͕ಘΒΕΔ͔ʯ
• ͜ΕʮతʯʮػೳʯʹԊͬͨநԽ • ͭ·Γɺʮ࣮ଶ(۩)͔ΒۃྗΕͯɺత(ϩʔϧ)ಉ࢜ͷܨ͕ Γʹด͡ͳ͕ΒઃܭΛ͠·͠ΐ͏ʯ͘Β͍ͷ • ɾɾͱݸਓతʹࢥͬͨͷͰ͕͢ɺօ͞ΜͲ͏Ͱ͔͢ʁ
ܧঝɺطଘΦϒδΣΫτΛಛघԽ͢Δ ͨΊͷͷͰͳ͘ɺྲྀಈతཁૉΛ֓೦ Խ͢ΔͨΊͷखஈͱͯ͠ଊ͑Δ
େֶӃੜ Ξϯέʔτ ճऩ͢ΔΑ ߨٛΛड͚ΔΑ طଘΦϒδΣΫτΛಛघԽ͢Δྫ 5" ʮΦϒδΣΫτͷత()ͱؔͳ͍ϝιουʯΛ͍࣋ͬͯΔ ߨٛΛड͚Δ ༁Ͱͳ͍ ͔ΒΦʔόʔϥΠυΑ
େֶӃੜ Ξϯέʔτ ճऩ͢ΔΑ ߨٛΛड͚ΔΑ ߨٛΛฉ͚ Δౕ ߨٛͷ ӡӦαϙʔ τౕ डߨ४උͰ
͖Δౕ நʹΑͬͯྲྀಈతཁૉΛ֓೦Խ͢Δྫ 5" Ξϯέʔτ ճऩ͢ΔΑ
ֶੜ ֶशͷͨΊʹ ߨٛΛड͚ΔΑ ߨٛΛฉ͚ Δౕ நʹΑͬͯྲྀಈతཁૉΛ֓೦Խ͢Δྫ ࢹ Ϛϯ ධՁΛ͠ͳ͕Β ߨٛʹࢀՃ͢ΔΑ
ཧ͢Δσʔλ • ߨࢣͷύϑΥʔ Ϛϯε • डߨऀͷԠ ཧ͢Δσʔλ • ڭत༰ • ࢼݧɺ॓ͷใ
͋ͱ7߲ڍ͕͍ͬͯΔΑ • Ϋϥεதʹଘࡏ͢Δྲྀಈతཁૉ͔Βɺҟ࣭ͳྲྀಈతཁૉΛΓग़͢ • ݁߹Λ͘͢ΔΑ͏ΊΔ • ڽूΛߴ͘͢ΔΑ͏ΊΔ • ΦϒδΣΫτΛ༻͢ΔίʔυͱɺͦͷΦϒδΣΫτΛੜ͢Δ ίʔυΛ͢Δ
• OAOOϧʔϧΛݫक͢Δ • ҙਤʹΑΔϓϩάϥϛϯάͱҙਤΛ໌֬ʹද͢ωʔϛϯάϧʔϧΛ ༻͍ͯɺίʔυͷՄಡੑ্ʹΊΔ • ίʔσΟϯάΛ։࢝͢ΔલʹɺίʔυͷςετՄೳੑΛߟྀ͢Δ
σβΠϯύλʔϯʹΑΔ ࣮ͷΧϓηϧԽํ๏
ར༻ऀ-࣮ߦऀͷؔ • ”ࠓ·Ͱհ͖ͯͨ͠σβΠϯύλʔϯͷ͍͔ͭ͘ɺΫϥ ΠΞϯτΦϒδΣΫτ͔Β࣮ͷৄࡉΛӅṭ͢Δͱ͍͏ಛ Λ͍࣋ͬͯ·ͨ͠” νϟʔϋϯ ͍ͩ͘͞ʂ νϟʔϋϯ ͋͛ΔΑʂ ྫྷౚ͔
ങ͍ग़͠ ख࡞Γ ࣮ͷৄࡉʮ࣮ߦऀʯ͕ܾΊΔɻ ར༻ऀͷࢹքʹೖΕͤ͞ͳ͍ɺΓ͢
• ࣮ͷӅṭʹΑ֦ͬͯுΛ༰қʹ͢Δ • ྫ: Bridgeύλʔϯ • ࣮ͱந(ΠϯλʔϑΣΠε)ΛΓͯ͠ɺར༻ऀந ʹ͚͔͚ͩ͠ΔΑ͏ʹ͢Δ • ࣮ͷछྨ͕૿͑ͯɺΫϥΠΞϯτӨڹΛड͚ͣʹ
֦ுͰ͖ΔΑ͏ʹͳΔ ࣮ͷӅṭʹΑΔ֦ுੑͷ୲อ
ڞ௨ੑ/Մมੑੳͱ σβΠϯύλʔϯ (25.4ʙ25.6)
ڞ௨ੑ/ՄมੑੳͱྖҬ • “͔͠͠࠷ॏཁͳ͜ͱɺڞ௨ੑ/ՄมੑੳΛ༻͍ͨڞ௨ੑ ͷચ͍ग़͠ʹΑͬͯɺྖҬʹଘࡏ͍ͯ͠ΔύλʔϯΛચ͍ ग़͢ࡍͷख͕͔Γ͕ಘΒΕΔͱ͍͏͜ͱͳͷͰ͢ɻ” • ʮ࣮Ϩϕϧͷܗ͕ݟ͑Δʯ͜ͱΑΓɺ ʮྖҬͷܗΛϒϥογϡΞοϓͰ͖Δʯͷ͕ଚ͍ʂ • (֓೦Ϩϕϧͷ)நΛͲ͏͢Δʁ͕ܾ·ΕɺInterface/
implementsAbstract/extendsͲ͏͢Δʁࣗͣͱಋ͔ΕΔ ΑͶʙʂͱ͍͏ҼՌؔʹͦ͜Λ͚Δ
ڞ௨ੑ/Մมੑੳͱύλʔϯ • σβΠϯύλʔϯɺʮΑ͋͘Γ͕ͪͳXʯʹରͯ͠ʮ͍͍ײ͡ ʹϋϚΓ͍͢ܗࣜʯͱ͍͏දݱํ๏ΛఆࣜԽͨ͠ͷɾɾͱݴ͑ Δ • Α͋͘Γ͕ͪͳ = ڞ௨ੑ •
ʮ࣮ͷܗʯΑΓʮͲ͏͍͏෩ʹͷલͷΛೝࣝ͢Δ͔ʯͷ खॿ͚ʹͳΔʂ • strategyͬΆ͍ɺfacadeͬΆ͍ɺfactoryͬΆ͍etc… • ʮ˓˓͕ͬͯ͋ΔͷΛ͍ͬͯΔʯ͜ͱͷՁ
ύλʔϯͷؔ࿈
ύλʔϯॏཁͳͷͰͳ͘ͳΔ • ΞϨάβϯμʔʮੜ͖ੜ͖ͱͨ͠ݐઃʯΛࢦͨ͠ਓ • ͨͱ͑ʮݟͨͷඒ͠͞ίϯηϓτ͚ͩΛॏࢹͨ͠ɺډ ৺͕ѱ͍ਤॻؗʯͱ͔͕ݏʙͬͯਓɻʮຊΛಡΉਓͷࣗવ ͱཉ͢Δͷ͕݉ͶඋΘ͍ͬͯΔݐઃʯ͕͍͍ΑͶʂͬͯ • ύλʔϯϥϯήʔδɺͦ͏ͨ͠ʮΑ͘ٻΊΒΕΔͷʯʮͦ ͷޮՌɺํ๏ʯΛ·ͱΊͨͷ
• ͳͷͰɺʮ͠ύλʔϯࣗମΛΒͳͯ͘ɺཉ͍͠ͱ࣮ݱ ํ๏͕ࣗવͱ༙͖ग़ͯ͘Δʯ͜ͱʹൺͯʮύλʔϯΛͬͯ ͍Δʯ͜ͱͷॏཁੑԼ͢Δ
ίϯςΩετ͕ઌɺύλʔϯ͕ޙ(Έ͍ͨͳ) • ”ݱ࣮Λͦͷ··ड͚ೖΕΔ͜ͱΛֶΜͰ͠·͑ɺ ύλʔϯͦͷͷॏཁͰͳ͍” • ”࢝ΊతͳڌΓॴͰ͋ͬͨΞϧίʔϓͱ͍͏ύλʔϯ ͕ɺඞཁͰͳ͘ͳΔɻ(தུ)ᴷ୯ʹͦΕ͕;͞Θ͠ ͍ͱ͍͏ཧ༝ͰᴷΞϧίʔϒΛ࡞Δ͜ͱʹͳΔ” • ࣝͱͯ͠ύλʔϯΛʹ͚ͭΔ͜ͱͰίϯςΩετΛࣝ
ผ͘͢͠ͳΔ͔Εͳ͍͕ɺύλʔϯ͕ಛఆͷί ϯςΩετΛ༠ൃ͢ΔͷͰͳ͍
·ͱΊతͳͷ • ΦϒδΣΫτࢦݪଇ • (͍ҙຯͰͷ)ΧϓηϧԽΛେࣄʹͯ͠ʂ • ߴڽूͱૄ݁߹Λࢦͯ͠ʂ • ڞ௨ੑΛநग़ͯ͠நΛ࡞ͬͯɺநΛཔΓʹͨ͠ઃܭΛͯ͠ʂ •
σβΠϯύλʔϯ • ΦϒδΣΫτࢦݪଇΛ׆͔͠·ͬͨ͘ྑ͍ײ͡ͷϨγϐूͰ͋ΔΑʂ • ύλʔϯΛͬͯɺਂΊΔ͜ͱͰྖҬͷΞϓϩʔνڧ͘ͳΕΔʂ • ύλʔϯͦͷͷΛΔ͜ͱͰͳ͍ΑɺʮΛݟۃΊΒΕΔΑ͏ʹͳ ΔʯʮͦͷରԠ๏ͱɺͦΕʹΑΔӨڹʯΛ௫ΊΔΑ͏ʹͳΔͷ͕େࣄʂ • ྑ͍ઃܭʹΑͬͯɺมߋʹڧ͍γεςϜΛߏங͍ͯ͘͠ʂ