티스토리 뷰

Aggregation(집약), Composition(합성,구성).

 

두 패턴 모두 집합에 관련된 패턴으로 차이점에 대해 여러 설명들이 있으나 직접적으로 와닿지 않은 것이 사실임.

나름 고민해 본 결과 원룸이나 오피스텔에 입주할때 가전제품이 필요한데 구매하는 주체가 누구이고 이사갈때 두고 가는지 가져가는가의 차이정도가 어떨까 생각해봄. 

[Aggregation] 주인이 제공해주느냐  -->이사 갈때 두고 감, 생성 소멸이 내 관할이 아님. 다음 세입자에게 공유됨.

[Composition] 내가 구매하느냐        -->이사 갈때 가져가거나 내가 처분해야 함. 

 

객체에 대해 생성(create)과 소멸(destory)에 대한 주체(책임자)는 누구인가?

 

 

/* Composition */
public class Officetels{
  private Television tv;
  private Washingmachine washingmachine;

  public Officetels(){
    this.tv = new Television();  //내가 구매한 티비
    this.washingmachine = new Washingmachine(); //내가 구매한 세탁기
   } //이사갈때 가져가거나 내가 처분해야 함.
}

 

/* Aggregation */
public class Officetels{
  private Television tv;
  private Washingmachine washingmachine;

  public Officetels(Television tv, Washigmachine washingmachine){
    this.tv = tv;  //이미 있었던 티비
    this.washingmachine = washingmachine; //이미 있었던 세탁기
   } //이사갈때 가져가면 안됨. 다른 세입자가 써야 함.
}

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/08   »
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
글 보관함