Junior — Middle
Kokia yra gamyklos metodų šablonų vaidmuo ir taikymas programavime?
sobes.tech AI
Atsakymas iš AI
Fabriko metodas (Factory Method) šablonas naudojamas kurti objektus be konkrečios kuriamo objekto klasės nurodymo. Jis apibrėžia sąsają objektui kurti, bet leidžia pogrupiams nuspręsti, kokią klasę instancijuoti.
Flutter (ir bendrame programavime) fabrikų metodai taikomi siekiant:
- Užrakinti objekto kūrimo logiką, ypač jei kūrimas sudėtingas arba priklauso nuo sąlygų.
- Leisti keisti kuriamo objekto konkrečią klasę be kodo keitimo, kuris jį naudoja.
- Supaprastinti kodo testavimą ir plėtrą.
Pavyzdys Dart/Flutter:
abstract class Button {
void render();
}
class AndroidButton implements Button {
@override
void render() => print('Android mygtuko atvaizdavimas');
}
class IOSButton implements Button {
@override
void render() => print('iOS mygtuko atvaizdavimas');
}
class Dialog {
Button createButton(String platform) {
if (platform == 'Android') {
return AndroidButton();
} else if (platform == 'iOS') {
return IOSButton();
} else {
throw Exception('Nežinoma platforma');
}
}
void render() {
Button button = createButton('Android');
button.render();
}
}
Čia createButton yra fabrikas metodas, kuris kuria skirtingus objektus priklausomai nuo platformos.