Slide 1

Slide 1 text

'BDUPSZ.FUIPE 4FFFFFF% ༶໌఩

Slide 2

Slide 2 text

w'BDUPSZ.FUIPEͰ͸ɼΫϥε಺Ͱ࢖͏ΦϒδΣΫτʢΠϯελϯε ͷੜ੒ํ๏ʹ͍ͭͯ޻෉Λߦ͏ɽ wॊೈʹΦϒδΣΫτΛੜ੒͢Δ͜ͱ͕ՄೳʹͳΔ wܧঝΛར༻͢Δͱ͖ʹ࢖͏σβΠϯύλʔϯ 'BDUPSZ.FUIPEͬͯʁ 5FNQMBUF.FUIPEΛ΋͏ͪΐͬͱ࢖͍΍͘͢ʂ

Slide 3

Slide 3 text

wΠϯελϯεͷੜ੒Λɼந৅Ϋϥεʢ਌Ϋϥεʣʹ͢ΔͷͰ͸ͳ͘ɼα ϒΫϥε ࢠΫϥε ʹߦ͏͜ͱͰɼੜ੒͢ΔΠϯελϯεΛ؆୯ʹมߋ ͢Δ͜ͱ͕Ͱ͖Δɽ wΦϒδΣΫτͷੜ੒Λؔ਺Λܦ༝ͯ͠ߦ͏͜ͱͰ࣮૷Ͱ͖Δɽ 'BDUPSZ.FUIPEͬͯʁ ࣮૷ͷ޻෉ͷ΍Γ͔ͨ

Slide 4

Slide 4 text

͡Ό͋۩ମతʹ͸

Slide 5

Slide 5 text

wࠓճ͸ྉཧͷઃఆͰ࿩ΛਐΊ͍ͯ͘ɽ wྉཧ͢Δਓ͸ɼͦΕͧΕϨγϐΛݟͳ͕Βɼʮ੾Δˠম͘ˠࣽΔʯͷߦಈΛशಘ ͍ͯͯ͠ɼௐཧΛߦ͏ɽ wϨγϐ͸ɼ$PPLQBE΍ΫϥγϧͳͲಉ͡৯ࡐͰ΋ҟͳΔϨγϐ͕ଘࡏ͢Δɽ ࣮ࡍʹͭͬͯ͘Έͨ ઃఆΛ֬ೝ͍ͯ͘͠Α

Slide 6

Slide 6 text

ॳ৺ऀ͕ௐཧ͍ͯ͘͠Α /PU'BDUPSZ.FUIPE ͱΓ͋͑ͣ$PPLQBEΛݟΔ͔ class Shoshinsya_Chouri(metaclass=ABCMeta): @abstractmethod def kiru(self): raise NotImplemented @abstractmethod def yaku(self): raise NotImplemented @abstractmethod def nikomu(self): raise NotImplemented def chouri(self): cookpad = Cookpad(self.shokuzai) self.kiru(cookpad.recipe) self.yaku(cookpad.recipe) self.nikomu(cookpad.recipe) print("Ͱ͖ͨʂ") class Shoshinsya(Shoshinsya_Chouri): def __init__(self, shokuzai): self.shokuzai = shokuzai def kiru(self, cookpad): print(f'{cookpad}Λࢀߟʹͯ͠{self.shokuzai}Λ੾Δͧ') def yaku(self, cookpad): print(f'{cookpad}Λࢀߟʹͯ͠{self.shokuzai}Λম͍͍ͯ͘') def nikomu(self, cookpad): print(f'{cookpad}Λࢀߟʹͯ͠{self.shokuzai}ΛࣽࠐΉΑ') ਌ΦϒδΣΫτͰ ϨγϐΛࢦఆͯ͠ ݟ͍ͯΔϨγϐ

Slide 7

Slide 7 text

ผʹ͜ΕͰΑ͘ͳ͍ʁ

Slide 8

Slide 8 text

Α͘ͳ͍Αʂ

Slide 9

Slide 9 text

w͜ͷ࣮૷ํ๏ͩͱɼॳ৺ऀͷௐཧํ๏Λशಘ͍ͯ͠Δਓ͸ɼ$PPLQBE͔͠Ϩγϐ ΛݟΔ͜ͱ͕Ͱ͖ͳ͘ͳͬͯ͠·͏ɽ w$PPLQBEҎ֎΋ݟΔΑͶʁଞͷϨγϐ΋ݟ͍ͨΑͶʁʁ Կ͕ྑ͘ͳ͍ͷ͔ $PPLQBE͔͠Ϩγϐݟͳ͍ͷʁ

Slide 10

Slide 10 text

ਓʹΑͬͯΈΔ Ϩγϐҧ͏ΑͶʁ

Slide 11

Slide 11 text

͍ΖΜͳϨγϐʹରԠ͠Α͏ 'BDUPSZ.FUIPE αϒΫϥεͰϨγϐΛੜ੒͍ͯ͘͠Α class Chukyusha_Chouri(metaclass=ABCMeta): #snip def chouri(self): recipe = self.nanidetsukuru() self.kiru(recipe.recipe) self.yaku(recipe.recipe) self.nikomu(recipe.recipe) print("Ͱ͖ͨʂ") @abstractmethod def nanidetsukuru(self): raise NotImplementedError class Chukyusha(Chukyusha_Chouri): #snip def nanidetsukuru(self): return Kurashiru(self.shokuzai) αϒΫϥεʹ ·͔ͤΔ ਌Ϋϥεʹ೚͞Ε ͨϨγϐΛܾΊΔ

Slide 12

Slide 12 text

wॳڃऀͷௐཧํ๏͔͠ձಘ͍ͯ͠ͳ͍ਓ͸ɼ$PPLQBE͔͠ϨγϐΛݟΔ͜ͱ͕Ͱ ͖ͳ͔ͨɽ w͔͠͠ɼதڃऀͷௐཧํ๏Λձಘ͍ͯ͠Δਓ͸$PPLQBEʹͩ͜ΘΒͳ͍ௐཧ͕Ͱ ͖Δɽ wதڃऀ͝ͱʹͦΕͧΕࣗ෼͕ݟΔϨγϐ͕ੜ੒͞ΕΔͷͰɼॊೈʹରԠͰ͖Δɽ w5FNQMBUFNFUIPEͩͱௐཧํ๏ͷΫϥεΛϨγϐ਺͚ͩมߋ͕ೖΔ w͔͠͠ɼ'BDUPSZͩͱͨͩαϒΫϥεͰมߋΛՃ͑ΔͷΈʂ 'BDUPSZ.FUIPEΛձಘͨ͠ྉཧਓ $PPLQBEҎ֎΋ϨγϐݟΕΔΑ͏ʹͳͬͨΑ

Slide 13

Slide 13 text

w'BDUPSZ.FUIPE͸ɼ5FNQMBUF.FUIPEͱҧͬͯɼαϒδΣΫτͷੜ੒͸αϒΫ ϥεʹ೚ͤΔΑ͏ʹ͢Δɽ wαϒΫϥε͕ΦϒδΣΫτΛੜ੒͢ΔͷͰɼαϒΫϥεʹࣗ༝౓͕૿ͯ͠৭ʑͰ ͖ΔΑ͏ʹͳΔɽ w"CTUSBDU'BDUPSZ͸'BDUPSZ.FUIPEΛ΋ͬͱந৅తʹͨ͠΋ͷʁ ·ͱΊ 'BDUPSZ.FUIPEʹࣗ༝Λ