Junior — Middle
Ի՞նչ խմբի մեջ է պատկերված 'Ֆաբրիկա' մոդելը ծրագրային համակարգերի նախագծման համատեքստում։
sobes.tech AI
Պատասխան AI-ից
Ցանցային "Fabrika" (Factory) մոդելը պատկանում է ստեղծման (creational) մոդելների խմբին: Նրա հիմնական գործառույթն է օբյեկտների ստեղծումը, թաքցնելով նրանց ստեղծման տրամաբանությունը և թույլ տալով հաճախորդային կոդին աշխատել աբստրակցիաների հետ, ոչ թե կոնկրետ դասերով:
Օրինակ, PHP-ում կարելի է օգտագործել գործարան՝ տարբեր տիպի օբյեկտներ ստեղծելու համար՝ կախված պարամետրերից:
interface Logger {
public function log(string $message);
}
class FileLogger implements Logger {
public function log(string $message) {
// Ֆայլում գրանցում
}
}
class DatabaseLogger implements Logger {
public function log(string $message) {
// Տվյալների բազայում գրանցում
}
}
class LoggerFactory {
public static function create(string $type): Logger {
if ($type === 'file') {
return new FileLogger();
} elseif ($type === 'database') {
return new DatabaseLogger();
}
throw new Exception("Անհայտ լոգգերի տեսակ");
}
}
$logger = LoggerFactory::create('file');
$logger->log('Հաղորդագրություն');
Այս կերպ, գործարանը թաքցնում է օբյեկտների ստեղծումը և հեշտացնում է կոդի ընդլայնումը և սպասարկումը: