Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

2 Odizolowanie danych od kodu może prowadzić do przypadkowych zmian danych przez funkcje, które nie są z nimi logicznie związane. Ponadto modyfikacja.

Podobne prezentacje


Prezentacja na temat: "2 Odizolowanie danych od kodu może prowadzić do przypadkowych zmian danych przez funkcje, które nie są z nimi logicznie związane. Ponadto modyfikacja."— Zapis prezentacji:

1

2 2 Odizolowanie danych od kodu może prowadzić do przypadkowych zmian danych przez funkcje, które nie są z nimi logicznie związane. Ponadto modyfikacja programu napisanego w ten sposób jest trudniejsza do realizacji, gdyż nawet niewielka zmiana działania programu może spowodować konieczność wprowadzenia poprawek w wielu miejscach. Tradycyjne podejście do programowania, zwane programowaniem proceduralnym charakteryzuje się rozdzieleniem danych od operujących na nich funkcji. Takich wad pozbawione jest programowanie obiektowe, będące po programowaniu strukturalnym kolejnym etapem w rozwoju języków programowania.

3 3 Styl taki powstał w wyniku postrzegania rzeczywistości jako zbioru obiektów różnego typu, które mogą wykonywać określone czynności, potrafią się ze sobą komunikować i na siebie wzajemnie oddziaływać. Programowanie obiektowe jest stylem programowania, w którym do tworzenia programów używa się obiektów. obiekt = dane + metody Obiekty w programie często odzwierciedlają cechy i umiejętności swoich odpowiedników ze świata rzeczywistego.

4 4 Język obiektowy - powinien posiadać 4 właściwości: Hermetyzacja danych (enkapsulacja) Abstrakcja danych Dziedziczenie Polimorfizm

5 Hermetyzacja danych Jest to proces umiejscawiania definicji danych poprzez ich ukrywania wewnątrz obiektu i udostępnianie ich przez specjalne funkcje zwane metodami. Hermetyzacja umożliwia zapewnienie bezpieczeństwa danych, obsługę błędów i weryfikację poprawności danych.

6 Abstrakcja danych Jest to proces grupowania cech i czynności związanych z określonym bytem. Wspólne cechy (atrybuty) tworzą jednostkę logiczną - klasę. Klasa jest miejscem przechowywania takich informacji - dotyczących obiektów - które są dla nich niezmienne, wspólne. Obiekt jest instancją (egzemplarzem) klasy.

7 7 Klasy i obiekty ClassObject A class is a template or blueprint that defines an objects attributes and operations and that is created at design time An object is a running instance of a class that consumes memory and has a finite lifespan 123 245 12 245

8 8 Obiekt KONTO Wypłać Wpłać Sprawdź stan Upoważnij Zmień upoważnienie Porównaj podpis Zlikwiduj konto Nalicz procent Numer 123-456 SaldoZł 2500 Właściciel Jan Kowalski Upoważniony Ewa Kowalska Właściwości Metody

9 9 Powiązania pomiędzy obiektami PRACOWNIK Nazwisko Kowal Zarobek 2500 PracujeW PRACOWNIK Nazwisko Babel Zarobek 2000 PracujeW PRACOWNIK Nazwisko Nowak Zarobek 1500 PracujeW FIRMA Szef NrFirmy 102030 Nazwa Syntex Zatrudnia Dzięki istnieniu unikalnych identyfikatorów obiektów w obiektowych językach programowania i bazach danych możliwe jest tworzenie bezpośrednich powiązań między obiektami.

10 Dziedziczenie Jest to proces tworzenia bardziej szcze- gółowego typu danych na podstawie ogólnej klasy. Dziedziczenie opisuje się za pomocą hierarchii to_jest (is_a)

11 11 Przykład Dziedziczenia Z figury bazowej, powstają różne inne konkretne figury. narysuj() usuń() przesuń() Figura Okrąg Trójkąt Kwadrat Klasa podstawowa, macierzysta. Nadklasa. Klasy potomne. Podklasy. Wyprowadzenia klas.

12 12 Przykład dziedziczenia klas PRACOWNIK Zarobek Firma Zdjęcie ZarobekNetto() ZmieńZarobek(...) STUDENT NrIndeksu RokStudiów Wydział WstawOcenę(...) ZaliczSemestr() OSOBA Nazwisko Imię RokUrodz Wiek() obiekt

13 13 Dziedziczenie wielokrotne POJAZD ciężar..... prędkość_eksploat() POJAZD_LĄDOWY ilość_kół max_prędkość..... POJAZD_WODNY wyporność max_prędkość..... AMFIBIA SAMOCHÓD JACHT TRAKTOR ŻAGLÓWKA Jest to dziedziczenie z kilku klas, połączone z sumowaniem dziedziczonych cech

14 Polimorfizm Jest to proces udostępniania właści- wości o jednakowej nazwie kilku klasom, nawet, jeżeli są one inaczej wykorzystane w tych klasach. Polimorfizm wynika m.in. stąd, że progra- miści współpracujący ze sobą nadają podobne nazwy metodom realizującym podobne zadania.

15 15 Polimorfizm obiekt STUDENT.... dochody().... PRACOWNIK.... dochody().... EMERYT.... dochody().... obiekt OSOBA nazwisko kategoria.... Metody dochody są różne dla każdej klasy. Po otrzymaniu komunikatu dochody wybierana jest metoda właściwa dla klasy, do której należy dany obiekt. Polimorfizm wymaga dynamicznego wiązania. Przesłanianie jest jedną z jego form. Polimorfizm stwarza znaczny potencjał dla ponownego użycia i modyfikowalności oprogramowania.


Pobierz ppt "2 Odizolowanie danych od kodu może prowadzić do przypadkowych zmian danych przez funkcje, które nie są z nimi logicznie związane. Ponadto modyfikacja."

Podobne prezentacje


Reklamy Google