Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.

Slides:



Advertisements
Podobne prezentacje
C++ wykład 2 ( ) Klasy i obiekty.
Advertisements

Programowanie obiektowe
Związki w UML.
Programowanie obiektowe
Programowanie obiektowe
Projektowanie w cyklu życia oprogramowania
Zaawansowane metody programowania – Wykład V
1 Linux jako system wielozadaniowy i wielodostępny.
08: ERD – podencje, łuki i pułapki
Marcin Kujawa Michał Łobarzewski
Dziedziczenie i jego rodzaje
C++ wykład 2 ( ) Klasy i obiekty.
Inteligentne Systemy Informacyjne
Zasady zaliczenia Warunki uzyskania zaliczenia:
Systemy operacyjne.
Pakiety i ATD 1 Definicja. Pakietem albo jednostką programową nazywamy grupę logicznie powiązanych elementów, które mogą być typami, podtypami, obiektami.
Programowanie obiektowe. Obiekty. Metody. Właściwości.
Wstęp do programowania obiektowego
Projektowanie i programowanie obiektowe II - Wykład IV
Projektowanie i programowanie obiektowe II - Wykład II
1 Podstawy informatyki H. P. Janecki- 2006_ Systemy Operacyjne W6.
Projektowanie - wprowadzenie
Strukturalna metodyka projektowania systemu informatycznego
Projektowanie obiektowe
Wykład 4 Analiza i projektowanie obiektowe
Protokół Komunikacyjny
Formy pracy na odległość w dobie Nowej Gospodarki dr Zbigniew E. Zieliński Wyższa Szkoła Handlowa im. B. Markowskiego ul. Peryferyjna.
Opracowanie: Maria Wąsik
Podstawy programowania II
Źródła: podręcznikopracował: A. Jędryczkowski.
Systemy operacyjne.
Autor: Justyna Radomska
Programowanie strukturalne i obiektowe
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
WPROWADZENIE W ŚWIAT OBIEKTÓW
Dziedziczenie Maciek Mięczakowski
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Projektowanie obiektowe
Projektowanie obiektowe
Maszyna wirtualna ang. virtual machine, VM.
Wybrane zagadnienia relacyjnych baz danych
Podsumowanie metodologii OMT
Programowanie obiektowe – język C++
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Programowanie obiektowe 2013/2014
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
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.
W ą t e k (lekki proces) thread.
Programowanie w języku C++
Projektowanie stron WWW
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Zintegrowany sterownik przycisków. Informacje podstawowe Każdy przycisk jest podłączony do sterownika za pośrednictwem dwóch przewodów, oraz dwóch linii.
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Diagram klas Kluczowymi elementami są: klasy (class)
Przykłady analiza i projektowanie
Diagram komunikacji (communication diagram)
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Strukturalna metodyka projektowania systemu informatycznego.
Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM.
Wzorce Projektowe w JAVA
Programowanie Zaawansowane
Podstawy programowania
Struktura systemu operacyjnego
Partnerstwo dla Przyszłości 1 Lekcja 28 Dziedziczenie i rodzaje dziedziczenia.
Programowanie Obiektowe – Wykład 2
PGO - Projektowanie i implementacja pierwszych klas
PGO Dziedziczenie Michail Mokkas.
Zapis prezentacji:

Projektowanie obiektowe

Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram przepływu kosztów w metodzie ABC

System informacyjny składa się z wielu elementów o zróżnicowanych zadaniach

W pełni skonfigurowany system informacyjny zawiera bardzo wiele składników o różnym przeznaczeniu

Orientację w tej złożonej materii ułatwia fakt, że większość systemów informacyjnych ma obecnie strukturę warstwową W dodatku każdy nowoczesny system zawiera zarówno składniki wewnętrzne (zintegrowane z jądrem systemu) oraz składniki zewnętrzne (satelitarne)

Dzięki temu współczesne systemy informacyjne odznaczają się dużą elastycznością, co oznacza, że można do nich w każdej chwilo dołączać nowe komponenty. Jednak przyłączania każdego nowego urządzenia do systemu wymaga wykonania szeregu zabiegów w jego różnych warstwach, co jest kłopotliwe, chociaż na ogół odbywa się automatycznie.

klasa W projektowaniu obiektowym kluczowym pojęciem jest klasa Cechą charakterystyczną koncepcji klasy jest ukrycie danych przed obiektami zewnętrznymi. Obiekty zewnętrzne mają dostęp wyłącznie do funkcji (nazywanych też metodami) za pomocą których mogą zlecać wykonanie określonych operacji na danych Takie zamknięcie danych w „pancerzu” skojarzonych z nimi metod nazywa się enkapsulacją

Dzięki temu można zmienić tradycyjny układ systemu, w którym wiele programów korzysta z wielu danych Na nowy układ, w którym programy i dane są zblokowane razem W takim systemie każdy z obiektów może być programowany przez oddzielnego programistę i nie ma potrzeby uzgadniania w zespole projektowym wewnętrznych rozwiązań poszczególnych obiektów

Sposoby dzielenia danych pomiędzy programy w klasycznych (nie obiektowych) metodach projektowania (1) Kilka podprogramów używa tych samych danych

Sposoby dzielenia danych pomiędzy programy w klasycznych (nie obiektowych) metodach projektowania (2) Dane lokalne w podprogramach

Sposoby dzielenia danych pomiędzy programy w klasycznych (nie obiektowych) metodach projektowania (3) Podprogram mający własne dane korzysta jednak z danych współdzielonych w pliku

Sposoby dzielenia danych pomiędzy programy w klasycznych (nie obiektowych) metodach projektowania (4) Podprogramy mające własne lokalne dane korzystają ze wspólnej bazy danych

Przy metodzie obiektowej cały system można budować zestawiając powtarzalne obiekty i klasy w stosowych konfiguracjach na poszczególnych poziomach hierarchii systemu.

obiekty Na podstawie abstrakcyjnej definicji klasy można wygenerować konkretne obiekty

Mając dobrą definicję klasy można wygenerować z niej dowolnie dużo obiektów Obiekty

W tradycyjnym podejściu głównym „aktorem” działającym w systemie jest program zarządzający, który aktywizuje poszczególne programy i dane W podejściu obiektowym wszystkie obiekty mogą być aktywne równocześnie, a każdy z nich wykonuje swoją część zadania

Obiekty komunikują się ze sobą przesyłając komunikaty

Z jednej klasy można też wygenerować dalsze klasy Klasy potomne dziedziczą część właściwości klasy macierzystej

W ten sposób powstaje hierarchia klas i podklas, bardzo ułatwiająca operowanie złożonymi obiektami

W każdej chwili można także dodać nową podklasę

Atrybuty dotyczące obiektów wszystkich podklas wygodnie jest umieszczać w definicji klasy nadrzędnej Tak tego robić nie należy!

Budowa systemu w podejściu obiektowym polega na zestawianiu go z klas, których część może być tworzona specjalnie dla danego systemu, ale większość pochodzi z zasobów przeznaczonych do wielokrotnego użytku

Typowe źródła klas dla projektu

Obiekty są od siebie izolowane, ale porozumiewają się poprzez komunikaty Komunikat może zlecać wykonanie jakiejś czynności na danych zawartych wewnątrz obiektu. Komunikat odbiera wtedy jedna z metod powłoki i realizuje wymaganą czynność

Za pomocą komunikatu można nakazać sprawdzenie wartości jakiejś danej. Wynik sprawdzenia jest także odsyłany w formie komunikatu.

System metod i komunikatów używanych w podejściu obiektowym pozwala uniknąć wielokrotnego oprogramowywania tych samych czynności

Taki sam komunikat kierowany do różnych obiektów może wywołać różne działania polimorfizm To się nazywa „polimorfizm”

Czynność nakazana komunikatem może być wykonalna lub nie

Podejście obiektowe musi być stosowane konsekwentnie Zbudowane w sposób tradycyjny elementy systemu nie będą dobrze współpracować ze składnikami zbudowanymi w technice obiektowej

Możliwa jest budowa oprogramowania pośredniczącego pomiędzy elementami obiektowymi i tradycyjnymi Nie jest to jednak rozwiązanie wygodne ani eleganckie

Poprawna droga polega na stosowaniu podejścia obiektowego we wszystkich składnikach projektowanego systemu