Menu
Coddy logo textTech

Czym jest interfejs?

Część sekcji Logika i przepływ sterowania ścieżki GO w Coddy. Lekcja 12 z 68.

Interfejs w Go jest jak kontrakt, który określa, jakie zachowania musi mieć dany typ, nie określając, jak te zachowania są implementowane. Możesz myśleć o nim jak o zbiorze sygnatur metod opisujących, co coś potrafi.

Aby lepiej zrozumieć interfejsy, wyobraź sobie gniazdko elektryczne w swoim domu.

Gniazdko ma określony kształt i dostarcza prąd, ale nie obchodzi go, jakie urządzenie do niego podłączysz. Niezależnie od tego, czy jest to lampa, ładowarka do telefonu czy komputer, każde urządzenie z odpowiednią wtyczką może się podłączyć i otrzymać zasilanie. Gniazdko definiuje „interfejs” — wymagania dotyczące podłączenia.

W Go interfejs działa podobnie. Definiuje zestaw sygnatur metod, które typ musi mieć, aby „podłączyć się” do tego interfejsu. Każdy typ, który ma wszystkie wymagane metody, automatycznie spełnia ten interfejs, niezależnie od tego, co jeszcze robi ten typ ani jak implementuje te metody.

Ta koncepcja jest potężna, ponieważ pozwala pisać kod, który działa z każdym typem mogącym wykonywać określone zachowania, dzięki czemu programy są bardziej elastyczne i można ich ponownie używać. Tak jak różne urządzenia mogą korzystać z tego samego gniazdka elektrycznego, różne typy Go mogą spełniać ten sam interfejs, o ile mają wymagane metody.

Spróbuj swoich sił

Ta lekcja nie zawiera wyzwania z kodem.

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator Go online