Wat is het fabriekspatroon?
Bij computerprogrammering is een fabriek een object dat wordt gebruikt voor het maken van andere objecten. Objecten verwijzen in dit geval naar waarden, functies of gegevensstructuren die in code worden gebruikt. Het fabriekspatroon is een ontwerppatroon dat afhankelijk is van fabrieken om objecten te maken in plaats van de objecten direct te maken. Hierdoor kan de code eenvoudig worden gewijzigd en blijft de flexibiliteit behouden. Het wordt veel gebruikt in objectgeoriënteerde computerprogrammering, waarbij objecten worden gebruikt om programma's en toepassingen te bouwen.
Een fabriek heeft een methode voor elk type object dat het kan maken. Een methode is in wezen een patroon. Het bestaat uit een set instructies, ook wel een subroutine genoemd, die parameters opneemt die meestal door de gebruiker worden verstrekt en een specifiek object uitvoert. Het meeste gebeurt achter de schermen zonder dat de gebruiker of cliënt er iets van weet.
Wanneer het fabriekspatroon wordt gebruikt, werkt het programma samen met een gemeenschappelijke interface in plaats van rechtstreeks met klassen te communiceren. Een klasse wordt gebruikt als een sjabloon om objecten te maken. Elk object van een bepaalde klasse heeft hetzelfde gedrag en dezelfde basiskenmerken. Klassen kunnen verder worden onderverdeeld in subklassen, die elk enkele kenmerken van de klasse erven waartoe het behoort. Een object van een bepaalde klasse staat bekend als een instantie van die klasse.
Als de gebruiker bijvoorbeeld wilde dat het programma een vierkant maakte in een programma of besturingssysteem dat het fabriekspatroon gebruikt, zou het programma de fabriek laten weten dat de gebruiker een object nodig had met vier zijden van gelijke lengte en vier rechte hoeken. De fabriek zou de vormmethode melden dat een vorm nodig was. Het kan sommige parameters van het vierkant doorgeven, zoals het gebied dat de gebruiker wil dat het vierkant bedekt.
Subklassen bepalen welke klasse moet worden gebruikt. Een exemplaar van het klassenplein zou worden teruggegeven aan de fabriek, die het zou doorgeven aan het programma dat er het eerst om vroeg. De gebruiker ziet alleen dat informatie naar de fabriek is verzonden en door de fabriek is geretourneerd. De innerlijke werking van de fabriek kan niet worden gezien.
Het voordeel van het gebruik van een fabriekspatroon is dat het programma eenvoudig kan worden gewijzigd. Nieuwe typen kunnen aan het fabriekspatroon worden toegevoegd door eenvoudig een klein stukje van de klantcode te wijzigen, meestal niet meer dan één regel. Andere programmeerpatronen vereisen dat de programmeur de code wijzigt op elke locatie waar een object wordt gemaakt.