4 podstawowe zasady programowania obiektowego w JavaScript

Programowanie obiektowe to styl programowania, który koncentruje się wokół obiektów, a nie funkcji. Weźmy prosty przykład samochodu, który jest obiektem z właściwościami takimi jak model, kolor oraz metody takie jak uruchomienie pojazdu, zatrzymanie i jazda. Istnieją cztery podstawowe zasady programowania obiektowego. Bez nich języka programowania nie można nazwać zorientowanym obiektowo. Te zasady to hermetyzacja, dziedziczenie, polimorfizm i abstrakcja. W tym artykule dowiesz się o tych zasadach, ich znaczeniu i sposobie ich stosowania.


Hermetyzacja

Pierwszą z podstawowych zasad programowania obiektowego jest hermetyzacja. Polega ono na rozdzieleniu wewnętrznego i zewnętrznego interfejsu naszego obiektu, by pewne metody i właściwości były ukryte przed zewnętrznym środowiskiem.


Załóżmy, że mamy maszynę produkującą silniki. Obiekt taki będzie miał pełno właściwości i metod, które będą działać w jego wnętrzu. Jako programista nie będziesz chciał, by inni mogli zmieniać w każdej składowej takiego obiektu, ponieważ mogłoby przestać działać. Aby zaimplementować hermetyzację w JavaScript, tworzymy nową klasę. Wewnątrz deklarujemy nowe właściwości. Wszystkie z nich są prywatne oraz zapewni ich ukrycie i będą niedostępne z zewnątrz klasy. Od teraz jedynym sposobem na uzyskanie do nich dostępu są metody wewnątrz tej klasy.


Dziedziczenie

Kolejną z najczęściej stosowanych zasad programowania obiektowego jest dziedziczenie. Dziedziczenie pomaga wyodrębnić wspólne atrybuty i uniknąć pisania tego samego kodu. Zamiast tego możesz pozwolić innym klasom “dziedziczyć” po tej oddzielnej klasie. W takim przypadku klasa dziedziczona przez inne klasy jest nazywana “klasą nadrzędną”, a klasy dziedziczące po tej “klasie nadrzędnej” nazywane są “klasami podrzędnymi”. Dziedziczy wszystkie właściwości i metody rodzica. Jedynym wyjątkiem są prywatne właściwości i metody.


Polimorfizm

Trzecią z zasad programowania obiektowego to Polimorfizm. Załóżmy, że masz kilka klas powiązanych ze sobą poprzez dziedziczenie. Klasę nadrzędną i klasy podrzędne. Aby polimorfizm wystąpił muszą nastąpić dwie rzeczy. Po pierwsze, jedna z tych klas tworzy własną metodę. Po drugie, ta metoda w pewien sposób przesłania metodę o tej samej nazwie, która jest deklarowana w klasie dziedzica. Jeśli nauczyłeś się prowadzić jeden samochód, będziesz w stanie prowadzić każdy inny, nie ma znaczenia marka oraz jego konfiguracja, działa w podobny sposób. Tak samo w programowaniu, jeśli twój kod może współpracować z jedną implementacją interfejsu, powinien działać również z inną.


Abstrakcja

Ostatnią z zasad programowania jest abstrakcja. Ideą tej zasady jest to, że świat zewnętrzny powinien otrzymywać tylko istotne informację do wykorzystania. Nie powinien zawierać informacji o szczegółach implementacji tego obiektu. Abstrakcja pomaga nam zmniejszyć powielanie kodu, zamieniać implementację niczego nie psując oraz wdrożenie w jednym miejscu, co pozwala łatwo reagować na przełomowe zmiany.


Podsumowanie

Po przeczytaniu tego artykułu powinieneś już wiedzieć o co chodzi w hermetyzacji, dziedziczeniu, polimorfizmie i abstrakcji. Daj znać, co myślisz i udostępnij artykuł, jeśli Ci pomógł.