Sobes.tech
Junior — Middle

Тавсифи кунед, ки чӣ гуна нусхаи навсозии намудҳо дар барномасозӣ.

sobes.tech AI

Ҷавоб аз AI

Нусхаи намудор (type erasure) дар барномаи нависӣ як консепсия аст, ки дар он маълумоти дар бораи намудҳои додаҳо хориҷ карда мешаванд ё дар вақти иҷрои барнома нигоҳ дошта намешаванд.

Дар забонҳои бо умумӣ (generics), мисли Swift ё Java, компилятор истифода мебарад нусхаи намудорро барои табдил додани коди умумӣ ба коди бо намудҳои мушаххас бе нигоҳ доштани маълумот дар бораи параметрҳои намуд дар вақти иҷро.

Ин маъно дорад, ки дар вақти иҷро, барнома намудҳои мушаххасро, ки коди умумӣ бо онҳо кор мекард, намедонад, балки бо намудҳои асосӣ ё объектҳо кор мекунад.

Масалан дар Swift:

func printValue<T>(_ value: T) {
    print(value)
}

// Дар вақти иҷро, T нусхаи намудор мешавад ва функсия бо ҳар намуде, бе маълумот дар бораи T, кор мекунад

Нусхаи намудор имкон медиҳад, ки ҳамоҳангӣ бо вақти иҷро нигоҳ дошта шавад ва андозаи коди кам шавад, аммо имкониятҳои санҷиши намудҳоро дар вақти иҷро маҳдуд мекунад.