Sobes.tech
Junior — Middle

Ինչ է փոխվել Dart 2.0-ում ավտոմատ տիպերի փոխակերպման առումով և ինչուից հրաժարվեցին նրանից։

sobes.tech AI

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

Դարտ 2.0-ում հրաժարվել են ավտոմատ տիպի փոխարկումներից (implicit downcasts), որպեսզի բարձրացվի տիպային անվտանգությունը և բարելավվի արտադրողականությունը։ Նախկինում կոմպիլյատորը ինքնուրույն փոխարկում էր տիպերը, ինչը կարող էր հանգեցնել գործարկման ժամանակ սխալների, եթե տիպերը չհամապատասխանեին։

Հիմա բոլոր տիպի փոխարկումները պետք է լինեն բացահայտ, ինչը թույլ է տալիս հայտնաբերել սխալները կոմպիլյացիայի փուլում և դարձնում է կոդը ավելի կանխատեսելի և հուսալի։

Օրինակ՝

Object obj = "տող";
String str = obj; // Կոմպիլյացիայի սխալ Dart 2.0-ում
String str = obj as String; // Ճիշտ, բացահայտ փոխարկում

Այսպիսով, ավտոմատ փոխարկումից հրաժարվելը բարելավել է կոդի որակը և տիպային անվտանգությունը։