Slide 1

Slide 1 text

1)1FS,BJHJCZ!XFC ৚݅൑ఆʹ໊લɺ͚ͭͯ·͔͢ʁ

Slide 2

Slide 2 text

w 1)1FSྺ೥ɾ໊ݹ԰ࡏॅྺ΋໿೥ɾ݄͔Β ౦ژʹॅΈ·͢ w ೥ʙ೥ϑϦʔϥϯεडୗ։ൃ w ೥ࣗࣾαʔϏεاۀʹब৬ w స৬ΛܦͯɺݱࡏʢגʣϑϡʔδϣϯζΤ ϯδχΞϦϯάϚωʔδϟʔʢ෦Լͳ͠ɾ QMBZJOHʣ w +BWBͰܦӦ؅ཧιϑτΛ࡞͍ͬͯ·͢ɻ 4BB4ఏڙ͢ΔͨΊͷ؅ཧγεςϜ͸1)1 Ͱ࡞ͬͯ·͢ w ೔ຊ4ZNGPOZϢʔβʔձ /BHPZBQIQ XFCʢͳͳ͏͐Ϳʣ

Slide 3

Slide 3 text

ࣗݾ঺հͷ༨ஊϞμϯ1)1FSҙ֎ͱ+BWB΍ΕΔͧ w DMBTT JOUFSGBDF౳ΦϒδΣΫτࢦ޲ͷओཁ֓೦͕΄΅ಉ͡ w 1IQ4UPSNΛ*OUFMMJ+*%&"ʹม͑Δ͚ͩ w 1)16OJUΛ+6OJUʹม͑Δ͚ͩ w 9%FCVHΛ*OUFMMJ+*%&"ͷ+BWBσόοΨʹม͑Δ͚ͩ w WBS@EVNQ͸ແ͍😢

Slide 4

Slide 4 text

͓͠ͳ͕͖ w ࣗݾ঺հ✅ w ໊෇͚Δͱ͍͏͜ͱ w 1)1Ͱ৚݅෼ذʹ໊෇͚ΔʢϨϕϧʙϨϕϧʣ w ·ͱΊ

Slide 5

Slide 5 text

໊෇͚Δͱ͍͏͜ͱ w #PTXFMM % 'PVDIFS 5  ʰϦʔμϒϧί ʔυʕΑΓྑ͍ίʔυΛॻͨ͘ΊͷγϯϓϧͰ࣮ફత ͳςΫχοΫʱ ֯੐య༁ ΦϥΠϦʔɾδϟύϯ w ΋͏ྩ࿨೥͔ͩΒΈΜͳ࣮ફͯ͠ΔʜΑͶʁ

Slide 6

Slide 6 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ

Slide 7

Slide 7 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ IUUQTDVMBHFHJUIVCJP*OHSFTT*OGPHMZQIIUNM

Slide 8

Slide 8 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ

Slide 9

Slide 9 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ IUUQTDVMBHFHJUIVCJP*OHSFTT*OGPHMZQIIUNM

Slide 10

Slide 10 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ

Slide 11

Slide 11 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ IUUQTDVMBHFHJUIVCJP*OHSFTT*OGPHMZQIIUNM ʮ஌ࣝʯ

Slide 12

Slide 12 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ

Slide 13

Slide 13 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ IUUQTDVMBHFHJUIVCJP*OHSFTT*OGPHMZQIIUNM ʮ஌ࣝʯ ʮӕʯ ʮةݥʯ

Slide 14

Slide 14 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ

Slide 15

Slide 15 text

໊෇͚Δͱ͍͏͜ͱʢXPSLʣ w ໊લͳ͠ͷ࠷ॳͷਤܗͷ͜ͱɺ͍֮͑ͯ·͔͢ʁ w ໊લ͋Γͷೋճ໨ͷਤܗͷ͜ͱɺ͍֮͑ͯ·͔͢ʁ

Slide 16

Slide 16 text

৚݅෼ذʹ໊෇͚Δ w ීஈ͔Βม਺ɾؔ਺ɾΫϥε͸΋͏໊෇͚͍ͯ·͢ͶʁʢϦʔμϒϧίʔυʣ w JGจͷલޙʹίϝϯτΛॻ͘ͷͰ͸ͳ͍ํ๏͸͋Δʁ

Slide 17

Slide 17 text

৚݅෼ذʹ໊෇͚Δʢ໊෇͚ͳ͍ʣ if ($user->getAge() >= 20) { // you can drink some alcohol } if ($user->getAge() >= 20) { // you can vote }

Slide 18

Slide 18 text

৚݅෼ذʹ໊෇͚Δʢ໊෇͚ͳ͍ʣ if ($user->getAge() >= 20) { // you can drink some alcohol } if ($user->getAge() >= 20) { // you can vote } ͬͪ͜ͷҙຯͷ΍͚ͭͩ࿙Εͳ͘ ؒҧ͍ͳ͘୳ͤΔʁ

Slide 19

Slide 19 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ $canDrink = $user->getAge() >= 20; if ($canDrink) { // you can drink some alcohol } $canVote = $user->getAge() >= 20; if ($canVote) { // you can vote }

Slide 20

Slide 20 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ $canDrink = $user->getAge() >= 20; if ($canDrink) { // you can drink some alcohol } $canVote = $user->getAge() >= 20; if ($canVote) { // you can vote } Ͳ͔͜ͷϑΝΠϧ͚ͩ JT7PUFͱ͔DBO5PIZPͱ͔ॻ͍ ͯͳ͍ʁ ɹ৚݅෼ذʹ໊෇͚Δ͕ςʔ ϚͳͷͰ705"#-&@"(&ఆ਺Λ ஔ͘ઃܭʹ͸͠ͳ͍

Slide 21

Slide 21 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ if ($user->canDrink()) { // you can drink some alcohol } if ($user->canVote()) { // you can vote }

Slide 22

Slide 22 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ if ($user->canDrink()) { // you can drink some alcohol } if ($user->canVote()) { // you can vote } 6TFSͷछྨ͕ͨ͘͞Μ͋ͬͨΒʁ৚͕݅ ʮ೥ྸࡀҎ্ʯΑΓෳࡶͩͬͨΒʁ਺೥ޙ ʹ࠶ൃͯ͠΋΋͏Ұճಉ͜͡ͱ΍ΕΔʁ

Slide 23

Slide 23 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ class DrinkableSpecification { public function isSatisfiedBy(int $age): bool { return $age >= 20; } } class VotableSpecification { public function isSatisfiedBy(int $age): bool { return $age >= 20; } } IUUQTNBSUJOGPXMFSDPNBQTVQQTQFDQEG

Slide 24

Slide 24 text

৚݅෼ذʹ໊෇͚ΔʢϨϕϧʣ if ($drinkableSpecification->isSatisfiedBy($user->getAge())) { // you can drink some alcohol } if ($votableSpecification->isSatisfiedBy($user->getAge())) { // you can vote } IUUQTNBSUJOGPXMFSDPNBQTVQQTQFDQEG

Slide 25

Slide 25 text

ʢ͓·͚ʣ9Ͱ࿩୊ʢͩͬͨʣΞϨ JT4VDDFTT IUUQTYDPNNBOFLJOFDPUTUBUVT w JGจͱFMTFͷ࿩ͳͷͰएׯP ff  UPQJD w JT4VDDFTT͸ʮΧ΢ϯτ૿΍ͤ ΔʯͱʮϥΠϑݮΒͤͳ͍ʯΛ ·ͱΊͪΌ͍ͬͯΔ w %SJOLBCMFͱ7PUBCMFΛJT"EVMU Ͱ·ͱΊ࣮ͯ૷ͪ͠Όͬͯͨ తͳ΍ͭ

Slide 26

Slide 26 text

·ͱΊ w ͳΜͰ΋໊෇͚Δͱخ͍͠ɺ৚݅෼ذ΋໊෇͚Δͱخ͍͠ w ৚݅෼ذͷ໊෇͚Ϩϕϧʙ w Ϩϕϧม਺ʹ͢Δ w Ϩϕϧؔ਺ʢϝιουʣʹ͢Δ w Ϩϕϧ4QFDJ fi DBUJPOΫϥεʹ͢Δ w ͍ͭͰ΋໊෇͚Ε͹͍͍ͬͯ΋Μ͡Όͳ͍ͷͰؾΛ͚ͭΑ͏

Slide 27

Slide 27 text

5IBOLZPV