Junior — Middle
Рол ва истифодаи намунаҳои усулҳои фабрика дар барномасозӣ чист?
sobes.tech AI
Ҷавоб аз AI
Шаблони фабричного методу (Factory Method) пайдаланылады объектілерді нақты сыныпты көрсетпестен жасау үшін. Ол объектіні жасау үшін интерфейсті анықтайды, бірақ қай сыныпты инстанциялау керек екенін төменгі сыныптар шешеді.
Flutter-да (және жалпы бағдарламалауда) фабричный әдістер келесі мақсаттар үшін қолданылады:
- Объектілерді жасау логикасын инкапсуляциялау, әсіресе егер жасау күрделі немесе шарттарға байланысты болса.
- Жасалған объектінің нақты сыныбын өзгертуге мүмкіндік беру, оны қолданатын кодты өзгертуге болмайды.
- Кодтың тестілеуін және кеңейтілуін жеңілдету.
Dart/Flutter мысалы:
abstract class Button {
void render();
}
class AndroidButton implements Button {
@override
void render() => print('Android батырмасын көрсету');
}
class IOSButton implements Button {
@override
void render() => print('iOS батырмасын көрсету');
}
class Dialog {
Button createButton(String platform) {
if (platform == 'Android') {
return AndroidButton();
} else if (platform == 'iOS') {
return IOSButton();
} else {
throw Exception('Белгісіз платформа');
}
}
void render() {
Button button = createButton('Android');
button.render();
}
}
Мұнда createButton әдісі — платформаның негізінде әртүрлі объектілер жасайтын фабричный әдіс.