데이터의factory와 부식?
이른바 팩토리🤔
공장
프리즈의 팩토리가 있었던 것 같은 결말?
"아이고"이거, 손이 참 빠르네.😅
도대체 무슨 목적으로 사용한 걸까요?
나는 Fluter대학의 샤오쿤이 단식이라는 전문 용어를 사용하는 것이 생각났다.단식 모드에서 이factory를 사용하는 것 같습니다.
단식 도안의 견본
main.dart
class Singleton{
// (1) staticとしてインスタンスを事前に作成
static final Singleton _instance = Singleton._internal();
int _counter = 0;
// (2) Factoryコンストラクタ
factory Singleton(){
return _instance;
}
// (3) 内部で利用する別名コンストラクタ
Singleton._internal();
int increment(){
return ++_counter;
}
}
void main(){
// (4) 利用するコード
var inst1 = Singleton();
var inst2 = Singleton();
print(inst1.increment()); // 1となる
print(inst2.increment()); // 2となる
}
실행 결과1
2
Exited
동일한 인스턴스만 수행합니다.자기도 코드를 썼는데 단식을 배워보고 발견했어요!
class Singleton을 정의하면 static final Singleton,factory Singleton (), 같은 종류의 이름을 사용하지 않으면 사용할 수 없습니다!
사이트 축소판 그림
main.dart
class WhiteList {
// (1) staticとしてインスタンスを事前に作成
static final WhiteList _cache = WhiteList._();
// 空っぽの配列を用意
final List _whiteList = <String>[];
// (2) Factoryコンストラクタ
factory WhiteList() {
return _cache;
}
// 配列に値を入れて、戻り値として返す。
List show() {
return ["A社", "B社", "C社", "D社"];
}
// (3) 内部で利用する別名コンストラクタ
WhiteList._();
}
void main() {
var ins1 = WhiteList();
var ins2 = WhiteList();
print("ホワイト企業はどこか?");
print(ins1.show());
print(ins2.show());
}
실행 결과ホワイト企業はどこか?
[A社, B社, C社, D社]
[A社, B社, C社, D社]
인스턴스가 하나만 생성되고 List의 String 데이터가 표시됩니다.나는 이것이 규정된 문법인 줄 알았지만, 아닌 것 같다.
static final Singleton _instance = Singleton._internal();
단, 명명 규칙이 있기 때문에 주의해야 한다😅
나는 마침내 팩토리라는 단어를 이해했다고 생각한다.일종의 구조기입니까😅
Reference
이 문제에 관하여(데이터의factory와 부식?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/joo_hashi/articles/0e7a3fd76b4f4e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)