Programowanie obiektowe (OOP, ang. Object-Oriented Programming) to paradygmat programowania, w którym program buduje się z obiektów reprezentujących elementy rzeczywistego świata lub pojęcia z danej dziedziny.
Obiekt łączy w sobie:
- dane – przechowywane w polach lub właściwościach,
- zachowania – realizowane przez metody.
Podstawowe pojęcia
Najważniejsze elementy podejścia obiektowego to:
- klasa – szablon opisujący, jakie pola i metody będą miały obiekty,
- obiekt – konkretny egzemplarz klasy,
- hermetyzacja – ukrywanie szczegółów działania obiektu i kontrola dostępu do jego danych,
- dziedziczenie – tworzenie nowych klas na podstawie istniejących,
- polimorfizm – możliwość używania obiektów różnych klas w jednolity sposób.
W pytaniach egzaminacyjnych najczęściej za podstawę podejścia obiektowego uznaje się zestaw: klasy, obiekty i hermetyzacja.
Przykład w C
class Samochod
{
private int predkosc;
public void Przyspiesz(int wartosc)
{
predkosc += wartosc;
}
public int PobierzPredkosc()
{
return predkosc;
}
}
Samochod auto = new Samochod();
auto.Przyspiesz(20);
W przykładzie Samochod jest klasą, auto jest obiektem, a pole predkosc jest ukryte dzięki modyfikatorowi private.
Czego nie mylić z OOP?
Nie każdy termin programistyczny oznacza podejście obiektowe. Rekurencja, kwerendy, procedury, funkcje czy zmienne mogą występować w programowaniu, ale nie są charakterystycznymi filarami programowania obiektowego.