Sobes.tech
Junior — Middle

Wat is de rol en toepassing van fabrieksmethodepatronen in programmeren?

sobes.tech AI

Antwoord van AI

Het Factory Method-patroon wordt gebruikt om objecten te maken zonder de specifieke klasse van het te maken object aan te geven. Het definieert een interface voor het maken van een object, maar laat subclasses beslissen welke klasse geïnstantieerd wordt.

In Flutter (en in programmeren in het algemeen) worden factory methoden toegepast voor:

  • Het encapsuleren van de logica voor het maken van objecten, vooral als het maken complex is of afhankelijk is van voorwaarden.
  • Het mogelijk maken om de concrete klasse van het gemaakte object te veranderen zonder de code die het gebruikt te wijzigen.
  • Het vereenvoudigen van testen en uitbreidbaarheid van de code.

Voorbeeld in Dart/Flutter:

abstract class Button {
  void render();
}

class AndroidButton implements Button {
  @override
  void render() => print('Android knop renderen');
}

class IOSButton implements Button {
  @override
  void render() => print('iOS knop renderen');
}

class Dialog {
  Button createButton(String platform) {
    if (platform == 'Android') {
      return AndroidButton();
    } else if (platform == 'iOS') {
      return IOSButton();
    } else {
      throw Exception('Onbekend platform');
    }
  }

  void render() {
    Button button = createButton('Android');
    button.render();
  }
}

Hier is de methode createButton een factory-methode die verschillende objecten aanmaakt afhankelijk van het platform.