장점

 - 명료하다.

 - 이해하기가 쉽다.

단점

 - 객체가 불완전한 상태로 생성될 수 있다.

 - 멀티쓰레드 사용 시 불완전한 객체의 이슈가 발생할 수 있다.

 

set들의 향연을 보다보면 실수가 생길법도 하다.

가급적 지양하자.


  1. class NutiritionFactsBeans {
  2.         private int servingSize;
  3.         private int servings;
  4.  
  5.         // optional
  6.         private int calories;
  7.         private int fat;
  8.         private int sodium;
  9.         private int carbohydrate;
  10.        
  11.         public void setServingSize(int servingSize) {
  12.                 this.servingSize = servingSize;
  13.         }
  14.         public void setServings(int servings) {
  15.                 this.servings = servings;
  16.         }
  17.         public void setCalories(int calories) {
  18.                 this.calories = calories;
  19.         }
  20.         public void setFat(int fat) {
  21.                 this.fat = fat;
  22.         }
  23.         public void setSodium(int sodium) {
  24.                 this.sodium = sodium;
  25.         }
  26.         public void setCarbohydrate(int carbohydrate) {
  27.                 this.carbohydrate = carbohydrate;
  28.         }
  29.         @Override
  30.         public String toString() {
  31.                 return "NutiritionFactsBeans [servingSize=" + servingSize
  32.                                 + ", servings=" + servings + ", calories=" + calories
  33.                                 + ", fat=" + fat + ", sodium=" + sodium + ", carbohydrate="
  34.                                 + carbohydrate + "]";
  35.         }
  36.        
  37. }
  38.  
  39. public class Ex2 {
  40.         public static void main(String... args) {
  41.                 NutiritionFactsBeans cola = new NutiritionFactsBeans();
  42.                 cola.setCalories(240);
  43.                 cola.setCarbohydrate(100);
  44.                 cola.setFat(10);
  45.                 cola.setServings(11);
  46.                 cola.setServingSize(99);
  47.                 cola.setSodium(20);
  48.                 System.out.println(cola.toString());
  49.         }
  50. }


'java > design_pattern' 카테고리의 다른 글

Design Pattern 기본 원칙  (0) 2014.06.18
Builder Pattern  (0) 2014.06.17
Telescoping Pattern  (0) 2014.06.17
프론트 컨트롤러 패턴  (0) 2013.05.07
디자인패턴 개인 메모.  (0) 2012.03.29

+ Recent posts