Sobes.tech
Junior — Middle

Оё имкон дорад, ки функсионалияти синфро бо илова кардани хусусиятҳо ё майдонҳои нав тавассути интерфейсҳо васеъ кунем?

sobes.tech AI

Ҷавоб аз AI

Дар Go, интерфейсҳо маҷмӯи усулҳоро муайян мекунанд, ки намуд бояд иҷро кунад, аммо онҳо наметавонанд хусусиятҳо ё майдонҳоро дар бар гиранд. Аз ин рӯ, ғайриимкон аст, ки функсионалияти синф (навъ) бо илова кардани хусусиятҳои нав тавассути интерфейс васеъ карда шавад. Интерфейсҳо барои тавсифи рафтор истифода мешаванд, на структураҳои додаҳо.

Маслиҳати интерфейс дар Go:

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

Агар хоҳед, ки майдонҳои нав илова кунед, ин тавассути структура анҷом дода мешавад, на тавассути интерфейс.