Sobes.tech
Junior — Middle

Proqramlaşdırmada interfeyslər və ümumi tiplər arasındakı fərq nədir?

sobes.tech Süni İntellekt

AI-dan cavab

İnterfeyslər və ümumi tiplər proqramlaşdırmada müxtəlif vəzifələri həll edir:

  • İnterfeyslər müəyyən metodlar toplusunu təsvir edir ki, bu metodları implement edən bir tip olmalıdır. Onlar müxtəlif tiplərlə ümumi müqavilə vasitəsilə işləməyə imkan verir, bu da çox formallığı təmin edir. Məsələn, Go-da Reader interfeysi Read() metodunu müəyyən edir və bu metodu həyata keçirən hər hansı bir tip Reader kimi istifadə oluna bilər.

  • Ümumi tiplər müxtəlif məlumat tipləri ilə işləyən funksiyalar və strukturlar yazmağa imkan verir, bu da tiplərin təhlükəsizliyini qoruyur. Bunlar parametrli şablonlardır və istifadə zamanı konkret tiplər üçün tərtib olunur.

Go-da nümunə:

// İnterfeys
 type Reader interface {
     Read(p []byte) (n int, err error)
 }

// Ümumi funksiya
 func PrintSlice[T any](s []T) {
     for _, v := range s {
         fmt.Println(v)
     }
 }

Bu şəkildə, interfeeyslər davranışı müəyyən edir, və ümumi tiplər müxtəlif tiplər üçün kodun universalliyini təmin edir.