Programowanie obiektowe odnosi się do pojęcia w języki wysokiego poziomu, takie jak Java i Python, które używają obiektów i klas w swoich implementacjach. OOP ma cztery główne elementy konstrukcyjne, które są: polimorfizm, enkapsulacja, abstrakcja i dziedziczenie., Istnieją inne paradygmaty programowania, takie jak programowanie proceduralne, w których kody są zapisywane sekwencyjnie. Python i Java są wieloparadygmatycznymi językami programowania wysokiego poziomu, co oznacza, że obsługują zarówno OOP, jak i programowanie proceduralne. Programista decyduje się na użycie paradygmatu w oparciu o swoją wiedzę i problemy, które próbuje rozwiązać. Nie ma jednak kontrowersji, że OOP sprawia, że programowanie jest łatwiejsze, szybsze, bardziej dynamiczne i bezpieczne., Jest to główny powód, dla którego Java i Python są obecnie najpopularniejszymi językami programowania na świecie

Jeśli chcesz nauczyć się Javy i Pythona lub innych języków programowania zorientowanych obiektowo, musisz zrozumieć te paradygmaty programowania zorientowanego obiektowo, które są stosunkowo łatwym do zrozumienia pojęciem. Przyjrzyjmy się im.

Co to jest dziedziczenie?

w Javie i Pythonie kody są zapisywane w obiektach lub blokach, jeśli stosujesz metodologię OOP., Obiekty mogą wchodzić ze sobą w interakcje poprzez wykorzystanie właściwości każdego bloku lub rozszerzenie funkcjonalności bloku poprzez dziedziczenie. Dziedziczenie zapewnia ponowne użycie kodów. Istnieją miliony bibliotek Javy i Pythona, z których programista może korzystać poprzez dziedziczenie. Właściwości klasy mogą być dziedziczone i rozszerzane przez inne klasy lub funkcje. Istnieją dwa rodzaje klas. Jedną z nich jest klasa nadrzędna lub podstawowa, a drugą Klasa potomna, która może dziedziczyć właściwości klasy nadrzędnej. Dziedziczenie jest głównym filarem w programowaniu obiektowym., Jest to mechanizm, za pomocą którego klasy w Javie, Pythonie i innych językach OOP dziedziczą atrybut innych klas

Klasa nadrzędna może dzielić swoje atrybuty z klasą potomną. Przykład implementacji klasy nadrzędnej znajduje się w DDL (Dynamic-link library). DDL może zawierać różne klasy, które mogą być używane przez inne programy i funkcje

prawdziwym przykładem dziedziczenia jest matka i dziecko. Dziecko może dziedziczyć atrybuty takie jak wzrost, wzorce głosu, kolor., Matka może również rozmnażać inne dzieci z tymi samymi atrybutami

możesz utworzyć funkcję lub klasę o nazwie „Move Robot”, która steruje robotem do poruszania się. I możesz tworzyć metody i funkcje w innych programach, które mogą dziedziczyć klasę „Move Robot” bez przepisywania kodów w kółko. Możesz również rozszerzyć tę klasę, dziedzicząc ją i pisząc do niej kilka kolejnych kodów, które instruowałyby robota, aby się poruszał, a także uruchamiał w określonych okolicznościach używając instrukcji if I else., Dzięki dziedziczeniu możesz utworzyć wiele robotów, które odziedziczyłyby atrybuty nadrzędnej klasy „Move Robot”, co zapewnia możliwość ponownego użycia kodu.

podsumowując, dziedziczenie dotyczy relacji między klasami i metodą, która jest jak rodzic i dziecko. Dziecko może urodzić się z niektórymi atrybutami rodziców. Dziedziczenie zapewnia wielokrotne użycie kodów tak, jak wiele dzieci może dziedziczyć atrybuty swoich rodziców.,

gdy chcemy utworzyć funkcję, metodę lub klasę, szukamy superklasy, która zawiera kod lub część kodu, który chcemy zaimplementować. Możemy wtedy wyprowadzić naszą klasę z istniejącej. W Javie robimy to za pomocą słowa kluczowego „Extends”, a w Pythonie osiągamy to poprzez dziedziczenie atrybutów klasy poprzez wywołanie jej nazwy.

pracujesz w operacjach?

Czy wiesz, że aplikacja taka jak NerdVision może poprawić MTTR (Mean-Time-To-Repair)?,

enkapsulacja

jest to styl programowania, w którym ukryte są szczegóły implementacji. Znacznie zmniejsza złożoność tworzenia oprogramowania. W przypadku enkapsulacji narażone są tylko metody. Programista nie musi się martwić o szczegóły implementacji, a jedynie o operacje. Na przykład, jeśli programista chce użyć dynamicznej biblioteki linków do wyświetlania daty i czasu, nie musi martwić się o kody w klasie Data i czas, zamiast tego po prostu użyje klasy data i czas, używając zmiennych publicznych do wywołania jej., Zasadniczo enkapsulacja jest osiągana w Pythonie i Javie poprzez tworzenie prywatnych zmiennych do definiowania ukrytych klas, a następnie za pomocą publicznych zmiennych do wywołania ich do użycia. Dzięki takiemu podejściu klasa może być aktualizowana lub utrzymywana bez martwienia się o metody z nich korzystające. Jeśli wywołujesz klasę w dziesięciu metodach i musisz wprowadzić zmiany, nie musisz aktualizować całych metod, raczej aktualizujesz jedną klasę. Po zmianie klasy automatycznie aktualizuje metody. Enkapsulacja zapewnia również, że Twoje dane są ukryte przed zewnętrznymi modyfikacjami., Enkapsulacja jest również znana jako Data-Hidden.

enkapsulacja może być postrzegana jako osłona chroniąca dane przed dostępem do kodu zewnętrznego.

zasadniczo enkapsulacja wiąże Dane i Kod jako jedną jednostkę i wymusza modułowość.

polimorfizm

polimorfizm oznacza istnienie w wielu formach. Zmienne, funkcje i Obiekty mogą istnieć w wielu formach w Javie i Pythonie., Istnieją dwa rodzaje polimorfizmu: polimorfizm czasu pracy i polimorfizm czasu kompilacji. Czas uruchomienia może przybierać inną formę podczas uruchamiania aplikacji, a czas kompilacji może przybierać inną formę podczas kompilacji.

doskonałym przykładem polimorfizmu w programowaniu obiektowym jest zachowanie kursora. Kursor może przybierać różne formy, takie jak strzałka, linia, krzyżyk lub inne kształty w zależności od zachowania użytkownika lub trybu programu., Dzięki polimorfizmowi metoda lub podklasa może definiować swoje zachowania i atrybuty, zachowując część funkcjonalności swojej klasy nadrzędnej. Oznacza to, że możesz mieć klasę, która wyświetla datę i godzinę, a następnie możesz utworzyć metodę dziedziczenia klasy, ale powinna wyświetlać komunikat powitalny obok daty i godziny. Celem polimorfizmu w programowaniu obiektowym jest wymuszenie prostoty, uczynienie kodów bardziej rozbudowywalnymi i łatwymi w utrzymaniu aplikacjami.,

dziedziczenie pozwala na tworzenie hierarchii klas, gdzie klasa bazowa nadaje swoje zachowanie i atrybuty klasie pochodnej. Możesz wtedy dowolnie modyfikować lub rozszerzać jego funkcjonalność. Polimorfizm zapewnia, że właściwa metoda zostanie wykonana na podstawie typu obiektu wywołującego.

kody programów działały inaczej w innym systemie operacyjnym. Zdolność kodu programu wykazującego różne zachowania w całym systemie operacyjnym jest znana jako polimorfizm w OOP. Możesz utworzyć klasę o nazwie „Move”, a następnie cztery osoby tworzą zwierzęta, które odziedziczą klasę move., Ale nie znamy rodzaju zwierząt, które by stworzyły. Polimorfizm pozwalałby zwierzętom na poruszanie się, ale w różnych formach w oparciu o cechy fizyczne

A tworzy ślimaka, który dziedziczy klasę ruchu, ale ślimak pełzał

B tworzy kangura, który dziedziczy klasę ruchu, ale kangur przeskakuje

C tworzy psa, który dziedziczy klasę ruchu, ale psy będą chodzić

d tworzy rybę, która dziedziczy klasę ruchu, ale ryba będzie pływać.

polimorfizm sprawił, że zwierzęta te poruszają się, ale w różnych formach., To, jak programy będą się zachowywać, nie będzie znane do czasu uruchomienia.

Programiści i operatorzy muszą współpracować, aby osiągnąć sukces.

aplikacja NerdVision łączy te dwa zespoły, aby uczynić życie lepszym dla wszystkich

abstrakcja

Abstrakcja w Javie i Pythonie jest metodologią programowania, w której szczegóły kodów programowania są ukryte przed Użytkownikiem, a tylko najważniejsze rzeczy są wyświetlane użytkownikowi. Abstrakcja dotyczy raczej idei niż wydarzeń., To tak, jakby użytkownik uruchamiał program (przeglądarkę internetową) bez oglądania kodów tła. Abstrakcja jest osiągana w klasach abstrakcyjnych lub interfejsach w Javie i Pythonie. NetBeans i Eclipse IDE implementują abstrakcję dla Javy, podczas gdy Django implementuje abstrakcję dla Pythona.

programista używa zintegrowanego środowiska programistycznego do projektowania interfejsu użytkownika bez martwienia się o to, jak IDE generuje kody HTML. W istocie abstrakcja wyświetla istotne szczegóły tylko dla użytkownika.,

podsumowanie

główną ideą programowania obiektowego jest prostota, możliwość wielokrotnego użycia kodu, rozszerzalność i bezpieczeństwo. Są one osiągane poprzez enkapsulację, abstrakcję, dziedziczenie i polimorfizm. Aby język został sklasyfikowany jako OOP, musi mieć te 4 bloki OOP. Abstrakcja ma do czynienia z wyświetlaniem tylko odpowiedniego aspektu dla użytkownika, na przykład włączeniem radia, ale nie musisz wiedzieć, jak działa radio. Abstrakcja zapewnia prostotę. Dziedziczenie ma związek z metodami i funkcjami dziedziczącymi atrybuty innej klasy., Głównym celem jest ponowne użycie kodu, co zapewnia szybsze tworzenie programów. DRY (don ' t Repeat yourself) jest pojęciem dziedziczenia, które zakłada, że w programie nie powinno się mieć różnych kodów, które są podobne. Zamiast tego, mieć jedną klasę i używać innych metod, aby je wywołać i rozszerzyć funkcjonalności w razie potrzeby. Polimorfizm pozwala kodowi programu mieć różne znaczenie lub funkcje, podczas gdy enkapsulacja jest procesem utrzymywania klas prywatnych, więc nie mogą być modyfikowane przez zewnętrzne kody.