2013年4月14日日曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のVI部(クラスとオブジェクト指向プログラミング)のまとめ演習7.(コンポジション)を解いてみる。

その他参考書籍

7.(コンポジション)

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-

class Lunch:
    def __init__(self):
        self.c = Customer()
        self.e = Employee()
    def order(self, foodName):
        self.c.placeOrder(foodName, self.e)
    def result(self):
        self.c.printFood()

class Customer:
    def __init__(self):
        self.food = None
    def placeOrder(self, foodName, employee):
        self.food = employee.takeOrder(foodName)
    def printFood(self):
        print(self.food.name)

class Employee:
    def takeOrder(self, foodName):
        return Food(foodName)

class Food:
    def __init__(self, name):
        self.name = name

if __name__ == '__main__':
    lunch = Lunch()
    lunch.order("burritos")
    lunch.result()
    lunch.order("cola")
    lunch.result()

入出力結果(Terminal)

$ ./sample.py
burritos
cola
$

0 コメント:

コメントを投稿