Sobes.tech
Junior — Middle

Czy możesz wyjaśnić koncepcję interfejsu w programowaniu i jego cel?

sobes.tech AI

Odpowiedź od AI

Interfejs w programowaniu to kontrakt, który określa zestaw metod i właściwości, które klasa musi zaimplementować, ale nie zawiera ich implementacji. W C# interfejsy służą do zapewnienia abstrakcji i polimorfizmu, umożliwiając różnym klasom posiadanie wspólnego zestawu metod, co upraszcza interakcję między komponentami.

Na przykład, interfejs IShape może zawierać metodę Draw(). Klasy Circle i Rectangle implementują ten interfejs, dostarczając własną implementację metody Draw().

public interface IShape
{
    void Draw();
}

public class Circle : IShape
{
    public void Draw()
    {
        Console.WriteLine("Rysujemy koło");
    }
}

public class Rectangle : IShape
{
    public void Draw()
    {
        Console.WriteLine("Rysujemy prostokąt");
    }
}

Zastosowania interfejsów:

  • Zapewnienie standaryzowanego sposobu interakcji między klasami.
  • Umożliwienie korzystania z polimorfizmu.
  • Ułatwienie testowania i utrzymania kodu.
  • Wspieranie słabego powiązania między komponentami.