처음에는.. 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가 뭔지 내가 까먹으면 다시와서 보는 용도로만 작성해야겠다.