Sobes.tech
Junior

Funksiyalarda və qurucularda adlandırılmış parametrlər nə üçün istifadə olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Dart/Flutter-də adlandırılmış parametrlər bir neçə vəzifəni həll edir:

  1. Kodun oxunaqlığını artırmaq: Parametrlərin adlandırılması çağırış zamanı onların məqsədini açıq şəkildə göstərir. Bu, xüsusən də funksiya və ya konstruktor çox sayda eyni növ arqumentə malik olduqda faydalıdır.

    // Adlandırılmamış parametrlərlə, 1.0 və 5.0 nə demək olduğunu dərhal başa düşmək olmur
    Widget buildContainer(1.0, 5.0, Colors.blue);
    
    // Adlandırılmış parametrlərlə, arqumentlərin təyin edilməsi aydındır
    Widget buildContainer({double? padding, double? margin, Color? color});
    Widget container = buildContainer(padding: 1.0, margin: 5.0, color: Colors.blue);
    
  2. Çağırışda elastikliyi təmin etmək: Bu, funksiyaları və ya konstruktorları yalnız lazım olan parametrləri ötürməklə çağırmağa imkan verir, digər parametrlər isə lazım deyilsə, nəzərə alınmır (required və ya standart dəyərlərdən istifadə etməklə).

    // Yalnız lazım olan parametrlərlə çağırış
    Widget container = buildContainer(color: Colors.red);
    
  3. ** arqumentlərin sırasındakı səhvlərin qarşısını almaq:** Parametrlər ad ilə göstərildiyi üçün, çağırış zamanı onların sırası vacib deyil, bu da düzgün olmayan sıralama ilə bağlı səhvləri aradan qaldırır.

    // Adlandırılmış parametrlərin sırası vacib deyil
    Widget container1 = buildContainer(padding: 1.0, color: Colors.blue);
    Widget container2 = buildContainer(color: Colors.blue, padding: 1.0); // Eyni
    
  4. Kod dəstəyini yaxşılaşdırmaq: Adlandırılmış parametrlər, funksiyanın və ya sinfin gələcək versiyalarına yeni istəyə bağlı parametrlər əlavə etməyi asanlaşdırır, mövcud çağırışları dəyişdirmədən.

Flutter-da, əksər widgetlər adlandırılmış parametrlər istifadə edir, bu da onların API-sini daha intuitiv və elastik edir.

Onlar funksiyanın və ya konstruktorun parametr siyahısında {} içində elan edilir. Zəruri adlandırılmış parametrlər required açar sözü ilə qeyd olunur.

// Zəruri adlandırılmış parametr
void printRequiredName({required String name}) {
  print(name);
}

// Seçimli adlandırılmış parametr, standart dəyər ilə
void printOptionalAge({int age = 30}) {
  print(age);
}