티스토리 뷰
1 class SimplePizzaFactory{
2 public function createPizza(type:String):Pizza{
3 var pizza:Pizza = null;
4 if(type == "cheese"){
5 pizza = new CheesePizza();
6 }else if(type == "pepperoni"){
7 pizza = new PepperoniPizza();
8 }else if(type == "clam"){
9 pizza = new ClamPizza();
10 }else if(type == "veggie"){
11 pizza = new VeggiePizza();
12 }
13 return pizza;
14 }
15 }
////////////////////////////////////////
1 class CheesePizza extends Pizza{
2 public function CheesePizza(){
3 pizza_name = "CheesePizza";
4 dough = "얇게";
5 sauce = "짜게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////
1 class VeggiePizza extends Pizza{
2 public function VeggiePizza(){
3 pizza_name = "VeggiePizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////////////////
1 class ClamPizza extends Pizza{
2 public function ClamPizza(){
3 pizza_name = "ClamPizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
//////////////////////////////////////
1 class PepperoniPizza extends Pizza{
2 public function PepperoniPizza(){
3 pizza_name = "PepperoniPizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////////////
1 class Pizza{
2 private var pizza_name:String;
3 private var dough:String;
4 private var sauce:String;
5 private var ary:Array = new Array();
6
7 public function prepare(){
8 trace("피자이름 : "+pizza_name);
9
10 }
11 public function bake(){
12 trace("Bake for 25 minutes at 350");
13 }
14 public function cut(){
15 trace("Cutting the pizza into diagonal slices");
16 }
17 public function box(){
18 trace("Place pizza in official PizzaStore box");
19 }
20 public function getName():String{
21 return pizza_name;
22 }
23
24 }
///////////////////////////////////////
1 class PizzaStore{
2 private var factory:SimplePizzaFactory;
3 public function PizzaStore(factory:SimplePizzaFactory){
4 this.factory = factory;
5 }
6 public function orderPizza(type:String):Pizza{
7 var pizza:Pizza; 8 pizza = factory.createPizza(type);
9 pizza.prepare();
10 // pizza.bake();
11 // pizza.cut();
12 // pizza.box();
13 return pizza;
14 }
15 }
////////////////////////////////////////
var myPizzaStore:PizzaStore = new PizzaStore(new SimplePizzaFactory());
myPizzaStore.orderPizza("cheese");
myPizzaStore.orderPizza("pepperoni");
myPizzaStore.orderPizza("clam");
myPizzaStore.orderPizza("veggie");
2 public function createPizza(type:String):Pizza{
3 var pizza:Pizza = null;
4 if(type == "cheese"){
5 pizza = new CheesePizza();
6 }else if(type == "pepperoni"){
7 pizza = new PepperoniPizza();
8 }else if(type == "clam"){
9 pizza = new ClamPizza();
10 }else if(type == "veggie"){
11 pizza = new VeggiePizza();
12 }
13 return pizza;
14 }
15 }
////////////////////////////////////////
1 class CheesePizza extends Pizza{
2 public function CheesePizza(){
3 pizza_name = "CheesePizza";
4 dough = "얇게";
5 sauce = "짜게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////
1 class VeggiePizza extends Pizza{
2 public function VeggiePizza(){
3 pizza_name = "VeggiePizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////////////////
1 class ClamPizza extends Pizza{
2 public function ClamPizza(){
3 pizza_name = "ClamPizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
//////////////////////////////////////
1 class PepperoniPizza extends Pizza{
2 public function PepperoniPizza(){
3 pizza_name = "PepperoniPizza";
4 dough = "굵게";
5 sauce = "달게";
6 }
7
8 private function bake(){
9 trace("Bake for 25 minutes at 350");
10 }
11 private function cut(){
12 trace("Cutting the pizza into diagonal slices");
13 }
14 private function box(){
15 trace("Place pizza in official PizzaStore box");
16 }
17 public function getName():String{
18 return pizza_name;
19 }
20 }
/////////////////////////////////////////
1 class Pizza{
2 private var pizza_name:String;
3 private var dough:String;
4 private var sauce:String;
5 private var ary:Array = new Array();
6
7 public function prepare(){
8 trace("피자이름 : "+pizza_name);
9
10 }
11 public function bake(){
12 trace("Bake for 25 minutes at 350");
13 }
14 public function cut(){
15 trace("Cutting the pizza into diagonal slices");
16 }
17 public function box(){
18 trace("Place pizza in official PizzaStore box");
19 }
20 public function getName():String{
21 return pizza_name;
22 }
23
24 }
///////////////////////////////////////
1 class PizzaStore{
2 private var factory:SimplePizzaFactory;
3 public function PizzaStore(factory:SimplePizzaFactory){
4 this.factory = factory;
5 }
6 public function orderPizza(type:String):Pizza{
7 var pizza:Pizza; 8 pizza = factory.createPizza(type);
9 pizza.prepare();
10 // pizza.bake();
11 // pizza.cut();
12 // pizza.box();
13 return pizza;
14 }
15 }
////////////////////////////////////////
var myPizzaStore:PizzaStore = new PizzaStore(new SimplePizzaFactory());
myPizzaStore.orderPizza("cheese");
myPizzaStore.orderPizza("pepperoni");
myPizzaStore.orderPizza("clam");
myPizzaStore.orderPizza("veggie");
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ColorCop
- UI
- 밍밍이
- 디자인 체계도
- 디자인패턴
- bloger
- Decorator
- 사진
- 가이드라인
- Design Patterns
- graph
- Observer
- ActionScript
- Iterator
- 제퍼슨 한
- 플래시
- flash
- 터치폰
- 디자인분류
- Blog
- 액션스크립트
- StrategyPattern
- Information Ring
- UI디자인
- PhoneUI
- BitmapData
- DESIGN
- AS
- TemplateMethod
- 구글
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
글 보관함