Junior
Системаи навъи дар забони Dart чист?
sobes.tech AI
Ҷавоб аз AI
Системаи типгузории дар Dart қувватманд, статик ва имкон медиҳад, ки навъи динамикӣ муайян карда шавад.
Масоили асосӣ:
- Типи статикӣ: Навъҳои тағйирёбандаҳо дар вақти компилятсия санҷида мешаванд. Ин кӯмак мекунад, ки хатоҳо пеш аз иҷрои барнома ошкор шаванд.
// Нуқтаи намунаи типи статикӣ int синну сол = 30; // синну сол = "сиёҳ"; // Хатои компилятсия - Инференсияи навъҳо: Компилятор метавонад ба таври худкор навъи тағйирёбандаро дар асоси арзиши таъиншуда муайян кунад.
// Намунаи инференсияи навъ var ном = "Alice"; // Компилятор муайян мекунад, ки String аст - Навъи динамикӣ (dynamic): Имкон медиҳад, ки тағйирёбанда арзишҳои ҳар навъро нигоҳ дорад. Санҷиши навъҳо дар вақти иҷро анҷом дода мешавад. истифодаи
dynamicбояд кам карда шавад.// Намунаи навъи динамикӣ dynamic арзиш = 10; арзиш = "салом"; - Бехатарии Null (Null Safety): Барои пешгирии хатоҳои вобаста ба арзишҳои null ворид шудааст. Тағйирёбандаҳо дар асоси пешфарз наметавонанд
nullбошанд, агар ба таври равшан ҳамчун nullable (?) нишон дода нашаванд.// Намунаи null safety String неNull = "на null"; // неNull = null; // Хатои компилятсия String? nullable = null; // Имкон дорад null бошад - Null Safety қатъӣ: Мӯътадил мекунад, ки амалҳо бо навъҳои на-null ба истиснои он, ки nullability ба таври равшан иҷозат дода шудааст, ба
NullPointerExceptionоварда намерасонанд.
Системаи типизатсия дар Dart мувозинатро байни бехатарии забонҳои статикӣ ва чандирии забонҳои динамикӣ таъмин мекунад.