Sobes.tech
Junior — Middle

Ce tipuri de structuri de date implementează interfețe specifice într-un limbaj de programare?

sobes.tech AI

Răspuns de la AI

În Go, interfețele definesc un set de metode pe care un tip trebuie să le implementeze pentru a fi considerat compatibil cu acea interfață. Diferite structuri de date implementează anumite interfețe, ceea ce le permite utilizarea lor polimorfă.

Exemple:

  • io.Reader — interfață pentru citirea datelor. Sunt implementate de tipuri precum fișiere (os.File), buffer (bytes.Buffer), conexiuni de rețea etc.
  • io.Writer — interfață pentru scrierea datelor. Sunt implementate de fișiere, buffer, conexiuni de rețea etc.
  • sort.Interface — interfață pentru sortarea colecțiilor. Sunt implementate de slice-uri sau tipuri personalizate, oferind metodele Len(), Less(i, j int) și Swap(i, j int).
  • error — interfață pentru erori, implementată de orice tip cu metoda Error() string.

Astfel, structurile de date din Go implementează interfețe, oferind metodele necesare, ceea ce le permite să fie utilizate în funcții și algoritmi generici fără a fi legate de tipuri specifice.