Junior
Параметрҳои номгузоришуда дар Dart чист?
sobes.tech AI
Ҷавоб аз AI
Параметрҳои номбаршуда параметрҳои интихобии функсияҳо ва конструкторҳо дар забони Dart мебошанд, ки ба ҷойи ҷойгиршавӣ бо номи онҳо гузаронида мешаванд. Онҳо даъватҳои функсияро хонданашон осонтар мекунанд ва талаб намекунанд, ки дар вақти гузаронидани аргументҳо қатъӣ риоя шавад.
Онҳо дар дохили сӯрохиҳои {} эълон карда мешаванд. Барои он ки параметри номбаршуда ҳатмӣ шавад, калимаи калидии required истифода мешавад.
Масали истифодаи параметрҳои номбаршуда:
// Тартиби функсия бо параметрҳои номбаршуда
void greet({String? name, int? age}) {
print('Салом, ман $name номам ва ман $age сол дорам.');
}
// Даъвати функсия бо параметрҳои номбаршуда (тартиб муҳим нест)
void main() {
greet(name: 'Alice', age: 30);
greet(age: 25, name: 'Bob');
greet(name: 'Charlie'); // age null хоҳад буд
}
Масали истифодаи параметри ҳатмии номбаршуда:
// Тартиби функсия бо параметрҳои номбаршудаи ҳатмӣ
void displayInfo({required String id, String? description}) {
print('ID: $id');
if (description != null) {
print('Тавсиф: $description');
}
}
// Даъвати функсия бо параметрҳои номбаршудаи ҳатмӣ
void main() {
displayInfo(id: 'User123');
displayInfo(id: 'ProductXYZ', description: 'Маҳсулоти аъло.');
// displayInfo(); // Хатогӣ: бояд параметри ҳатмии 'id' пешниҳод шавад.
}
Фоидаҳои истифодаи параметрҳои номбаршуда:
- Беҳтар хонданашаванда: Ҳар як аргумент аз номи он равшан аст.
- Флексибл: Тартиби аргументҳо муҳим нест.
- Кӯмак: Илова кардани параметрҳои нав осон аст ва ба коди мавҷуда таъсир намерасонад.
- Бехатарӣ: Компилятор метавонад дар вақти компиляция гузаронидани параметрҳои ҳатмии номбаршударо санҷад.