Dart Factory 생성자...

김민진·2021년 1월 12일
1

flutter_문법

목록 보기
1/4

Factory 생성자

처음에는.. factory를 쓰는사람도 있고 없는사람도 있고 ..
c#을 하다와서 그런가? 라는 핑계로 factory가 뭐지;?? 팩토리 패턴인가?? 라고 생각만 했다..

그러다가 문득 검색해서 알고보니까..

약간 유니티의 싱글톤패턴 같은 느낌으로 인스턴스를 한번만 만들게 되는 거란다

보통 내가 생성자를 사용할때는..

class Dog {
  String move;
  String attack;

  Dog({this.move, this.attack});

  Dog.init(String a, String b) {
    this.move = a;
    this.attack = b;
  }

  Dog.add(String a, String b) {
    this.move = a;
    this.attack = b;
  }
}

이런식으로 사용하게 된다.
bloc를 쓰다보니 상태관리도 해야하고 하니... 위의 방식으로 사용하게 되는데..

class Dog {
  String move;
  String attack;

  Dog({this.move, this.attack});

  Dog.init(String a, String b) {
    this.move = a;
    this.attack = b;
  }

  Dog.add(String a, String b) {
    this.move = a;
    this.attack = b;
  }
}

class Dog {
  String move;
  String attack;

//  Dog({this.move, this.attack});

  Dog.init(String a, String b) {
    this.move = a;
    this.attack = b;
  }

  Dog.add(String a, String b) {
    this.move = a;
    this.attack = b;
  }
  factory Dog(String a,String b){
    return Dog.add(a, b);
  }
}

뭐.. 이런식으로 쓰지는 않겠지만..
여하튼 factory 를 쓰면 싱글톤처럼?
인스턴스를 생성하지 않고 만들어진 인스턴스를 재활용? 하는 느낌으로 쓰는것 같다..

아직 정상적으로 쓰고있지 않아서 ... factory가 뭔지 내가 까먹으면 다시와서 보는 용도로만 작성해야겠다.

profile
dart,c#,java 개발자! 잡다하게 해서 문제될게 없다!

0개의 댓글