Sobes.tech
Junior

Mi az a névvel ellátott paraméter a Dartban?

sobes.tech MI

Válasz az MI-től

A névvel ellátott paraméterek a Dart nyelvben opcionális paraméterek, amelyeket név szerint adnak át a pozíció helyett. Ezek olvashatóbbá teszik a függvényhívásokat, és nem igényelnek szigorú sorrendet az argumentumok átadásakor.

A {} közötti deklarációval vannak megadva. Ahhoz, hogy egy névvel ellátott paraméter kötelező legyen, a required kulcsszót kell használni.

Példa a névvel ellátott paraméterek használatára:

// Függvény definíció névvel ellátott paraméterekkel
void greet({String? name, int? age}) {
  print('Szia, a nevem $name és $age éves vagyok.');
}

// Függvényhívás névvel ellátott paraméterekkel (a sorrend nem számít)
void main() {
  greet(name: 'Alice', age: 30);
  greet(age: 25, name: 'Bob');
  greet(name: 'Charlie'); // az age null lesz
}

Példa egy kötelező névvel ellátott paraméter használatára:

// Függvény definíció kötelező névvel ellátott paraméterrel
void displayInfo({required String id, String? description}) {
  print('ID: $id');
  if (description != null) {
    print('Leírás: $description');
  }
}

// Függvényhívás kötelező névvel ellátott paraméterrel
void main() {
  displayInfo(id: 'User123');
  displayInfo(id: 'ProductXYZ', description: 'Kiváló termék.');
  // displayInfo(); // Hiba: kötelező paramétert, az 'id'-t meg kell adni.
}

A névvel ellátott paraméterek használatának előnyei:

  • Javított olvashatóság: Minden argumentum értéke egyértelmű a nevéből.
  • Rugalmasság: Az argumentumok sorrendje nem számít.
  • Kényelem: Új opcionális paraméterek könnyen hozzáadhatók anélkül, hogy a meglévő kódot megzavarnák.
  • Biztonság: A fordító ellenőrizheti a kötelező névvel ellátott paraméterek átadását fordítási időben.