Hvad er fabriksmønsteret?
I computerprogrammering er en fabrik et objekt, der bruges til at oprette andre objekter. Objekter i dette tilfælde henviser til værdier, funktioner eller datastrukturer, der bruges i kode. Fabriksmønsteret er et designmønster, der er afhængig af fabrikker til at fremstille objekter i stedet for at skabe objekter direkte. Dette gør det let at ændre koden og bevare fleksibiliteten. Det er vidt brugt i objektorienteret computerprogrammering, der bruger objekter til at bygge programmer og applikationer.
En fabrik har en metode til hver type objekt, den kan oprette. En metode er i det væsentlige et mønster. Det består af et sæt instruktioner, kendt som en subroutine, der tager parametre, som normalt leveres af brugeren, og afgiver et specifikt objekt. Det meste af dette sker bag kulisserne, uden at brugeren eller klienten ved noget om det.
Når man bruger fabriksmønsteret, interagerer programmet med en fælles interface snarere end direkte at kommunikere med klasser. En klasse bruges som en skabelon til at oprette objekter. Hvert objekt i en bestemt klasse deler den samme adfærd og grundlæggende attributter. Klasser kan yderligere opdeles i underklasser, der hver især arver nogle af attributterne i den klasse, som den hører til. Et objekt af en bestemt klasse er kendt som et eksempel på den klasse.
Hvis for eksempel brugeren ønskede, at programmet skulle oprette en firkant i et program eller et operativsystem, der bruger fabriksmønsteret, vil programmet underrette fabrikken om, at brugeren havde brug for et objekt, der havde fire sider med samme længde og fire rette vinkler. Fabrikken meddelte formmetoden, at en form var nødvendig. Det kan muligvis videregive nogle parametre for kvadratet, f.eks. Det område, som brugeren ønsker, at kvadratet skal dække.
Underklasser bestemmer, hvilken klasse der skal bruges. Et eksempel på klassetorget vil blive returneret til fabrikken, som ville videresende det til det program, der først anmodede om det. Brugeren kunne kun se, at oplysningerne blev sendt til fabrikken og returneret af fabrikken. Fabrikkens indre funktion kan ikke ses.
Fordelen ved at bruge et fabriksmønster er, at det gør det nemt at ændre programmet. Nye typer kan tilføjes til fabriksmønsteret ved blot at ændre et lille stykke af klientkoden, normalt ikke mere end en linje. Andre programmeringsmønstre kræver, at programmereren ændrer koden på hvert sted, hvor et objekt oprettes.