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:
-
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); -
Ç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 (
requiredvə 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); -
** 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 -
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);
}