開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料機能制限版、light版)
- Script言語: Python
『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のVI部(クラスとオブジェクト指向プログラミング)のまとめ演習7(コンポジション)を解いてみる。
7.
コード(TextWrangler)
#!/usr/bin/env python #encoding: 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.foodName = 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('hamburger') lunch.result() lunch.order('cola') lunch.result()
入出力結果(Terminal)
$ python sample.py hamburger cola $
0 コメント:
コメントを投稿