Sobes.tech
Middle

Խոսեք ինձ մասին Flutter-ի կայուն կոնստրուկցիաների մասին։

sobes.tech AI

Պատասխան AI-ից

Կայուն կոնստրուկտորը թույլ է տալիս ստեղծել օբյեկտ, որը կոմպիլատորը կարող է հաշվարկել ժամանակին և կրկնակի օգտագործել։ Սա բարելավում է կատարողականությունը և նվազեցնում հիշողության սպառումը։

Հիմնական հատկանիշներ՝

  • նշված է const բանալի բառով։
  • Այս կոնստրուկտորով սահմանված դասի բոլոր դաշտերը պետք է լինեն final։
  • Կոնստրուկտորի բոլոր արգումենտները նույնպես պետք է լինեն կայուն կամ ունենան նախնական կայուն արժեքներ։
  • Երբ ստեղծում եք օրինակ այս կոնստրուկտորով, օգտագործվում է const բանալի բառը։

Օրինակ՝

class Point {
  final double x;
  final double y;

  const Point(this.x, this.y); // կայուն կոնստրուկտոր
}

void main() {
  // Այս երկու օբյեկտները ներկայացնում են նույն օրինակը հիշողության մեջ
  const p1 = Point(1.0, 2.0);
  const p2 = Point(1.0, 2.0);

  // Այս օբյեկտը կլինի նոր օրինակ
  final p3 = Point(1.0, 2.0);

  print(identical(p1, p2)); // Տպում է՝ true
  print(identical(p1, p3)); // Տպում է՝ false
}

Կայուն կոնստրուկտորների օգտագործման առավելությունները՝

  • Աշխատանքային արագություն: Օբյեկտները ստեղծվում են միայն մեկ անգամ և կրկնակի օգտագործվում են։
  • Հիշողության սպառման նվազեցում: Ստեղծված օբյեկտների քանակը նվազում է։
  • Անփոփոխություն: const-ով ստեղծված օբյեկտները անփոփոխ են։

Հատկանշական՝

  • Կլասը չի կարող ունենալ գործարանային կոնստրուկտոր (factory
  • Կլասը չի կարող պարունակել փոփոխական դաշտեր։

Կայուն կոնստրուկտորները հաճախ օգտագործվում են Flutter-ում անփոփոխ վիդջեթներ ստեղծելու համար, ինչպիսիք են Text, Icon, Padding, SizedBox, և դա լավ պրակտիկա է օգտագործողի ինտերֆեյսի կատարողականությունը օպտիմալացնելու համար։