You are hereKlasy i obiekty
Klasy i obiekty
Obiektem może być prawie każda rzecz lub koncepcja. Na obiekt składają się jego właściwości, czyli pewne atrybuty przypisane do obiektu oraz metody – funkcje, działania powodujące modyfikację obiektu lub wywołujące właściwe zachowania obiektu.
Każdy obiekt ma swój własny interfejs dostępu do niego. Przy pomocy tegoż interfejsu możemy zmieniać obiekt lub inicjować określone działania. Implementacja tego interfejsu nie musi być nam znana i jej sposób działania może być poza naszą świadomością. Dodanie nowych właściwości czy zmiana sposobu definicji metod oraz likwidacja błędów klasy nie zmienia interfejsu, dzięki czemu użytkownik klasy nie musi nawet o tych zmianach wiedzieć.
Klasa to tak na prawdę zbiór właściwości oraz metod. Dzięki hermetyczności klasy, czyli zdefiniowaniu właściwego interfejsu klasy, ułatwiamy tworzenie obiektów bez żmudnego pisania kodu od początku. W razie potrzeb zawsze możemy rozbudować klasę o nowe metody lub poprawić błędy w już istniejących nie naruszając interfejsu, czyli zbioru właściwości i metod zdefiniowanych do komunikacji ze światem zewnętrznym.
Można powiedzieć, że programowanie obiektowe powinno być stosowane przede wszystkim przy większych projektach. W przypadku małych serwisów internetowych, gdzie liczba wierszy kodu jest niewielka, programowanie strukturalne sprawdza się dużo lepiej. Krótko mówiąc, aby uciąć patyk nie musimy używać tarczowej piły elektrycznej, wystarczy nam do tego ręczna piłka. Może się okazać, że zrobimy to szybciej i nie razimy się na dodatkowe koszty(np. prąd).
Mając zdefiniowaną klasę możemy przy jej użyciu utworzyć wiele obiektów, które nie będą na siebie wpływały, będą niezależne. Każdy z tych obiektów będzie miał unikalny, identyfikujący go uchwyt.