PROJEKTOWANIE OBIEKTOWE
Punktem wyjścia w obiektowym tworzeniu SI jest model biznesowy
Np. DP kosztów w metodzie ABC :
SI składa się z wielu elementów o zróżnicowanych zadaniach, np:
Większość SI ma strukture warstwową, zawiera :
- Składniki wewnętrzne (jądro)
- Składniki zewnętrzne
Dzięki temu są one elastyczne (można do nich w każdej chwili dołączyć nowe komponenty).
Jednak przyłączenie nowego urządzenia wymaga szeregu zabiegów w różnych
warstwach, co jest trudne (choć w większości przypadków odbywa się
automatycznie)
Podstawowe koncepcje projektowania obiektowego:
Koncepcja obiektu:
- Stan wewnętrzny
- Sposób zachowania
- Tożsamość unikatowa
Zasada Abstrakcji :
- Równoległej
- Uogólniającej
Zasada hierarchizacji:
- Kompozycyjnej
- Dziedziczenia
Zasada modularności (dzielenie na kawałki, fragmenty, moduly)
Zasada enkapsulacji
Pojęciem kluczowym w modelowaniu jest KLASA.
Cechą charakterystyczną koncepcji klasy jest ukrycie danych przed obiektami zewnętrznymi.
Obiekty zewnętrzne mają dostęp do funkcji (metod) za pomocą których mogą zlecać wykonanie określonych operacji na danych.
ENKAPSULACJA – zamknięcie danych w „pancerzu” skojarzonych z nimi metod.
Dzięki temu można zmienić tradycyjny układ systemu w którym wiele programów korzysta z wielu danych (1)
Na nowy układ w którym programy i dane są zblokowane razem (2)
(1)
(2)
W takim systemie każdy z obiektów może być programowany przez oddzielnego programistę.
Cały system można wtedy budować zastosowując
powtarzalne obiekty i klasy w stosownych konfiguracjach na
poszczególnych poziomach hierarchii systemu.
Na podstawie abstrakcyjnej definicji klasy można wygenerować konkretne OBIEKTY.
Z klasy można wytworzyć dowolnie dużo obiektów.
1) 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.
2) 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 wygenerować dalsze klasy.
Klasy potomne dziedziczą częśc właściwości nadklasy.
I tak powstaje hierarchia klas i podklas, 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.
Budowa systemu polega na zastosowaniu go z klas, z
których częśc jest stworzona specjalnie dla danego systemu, ale
większość pochodzi z zasobów przeznaczonych dla wielokrotnego użytku
(np biblioteka klas).
Typowe źródła klas dla projektu :
- Klasy unikalne (opracowanie wewnętrzne)
- Klasy wyspecjalizowane (dostawca klas)
- Klasy ogólne (dostawca języka)
|