PO Obiektowe modelowanie dziedziny: Różnice pomiędzy wersjami
test wstawiania |
|||
Linia 1: | Linia 1: | ||
== Wprowadzenie == | == Wprowadzenie == | ||
'''Programowanie obiektowe''' (''ang. object-oriented programming'') jest obecnie najpopularniejszą techniką tworzenia programów komputerowych. Program komputerowy wyraża się się jako zbiór | '''Programowanie obiektowe''' (''ang. object-oriented programming'') jest obecnie najpopularniejszą techniką tworzenia programów komputerowych. Program komputerowy wyraża się się jako zbiór "obiektów" będących bytami łączącymi stan (czyli dane) i zachowanie (czyli metody, które są procedurami operującymi na danych obiektu). W celu realizacji zadania obiekty wywołują nawzajem swoje metody zlecając tym samym innym obiektom odpowiedzialność za pewne czynności. W porównaniu z tradycyjny programowaniem proceduralnym, w którym dane i procedury nie są ze sobą związane, programowanie obiektowe ułatwia tworzenie dużych systemów i współpracę wielu programistów. Programy obiektowe łatwiej jest rozwijać i ponownie wykorzystywać ich fragmenty. | ||
== Historia programowania obiektowego == | == Historia programowania obiektowego == |
Wersja z 22:07, 15 lip 2006
Wprowadzenie
Programowanie obiektowe (ang. object-oriented programming) jest obecnie najpopularniejszą techniką tworzenia programów komputerowych. Program komputerowy wyraża się się jako zbiór "obiektów" będących bytami łączącymi stan (czyli dane) i zachowanie (czyli metody, które są procedurami operującymi na danych obiektu). W celu realizacji zadania obiekty wywołują nawzajem swoje metody zlecając tym samym innym obiektom odpowiedzialność za pewne czynności. W porównaniu z tradycyjny programowaniem proceduralnym, w którym dane i procedury nie są ze sobą związane, programowanie obiektowe ułatwia tworzenie dużych systemów i współpracę wielu programistów. Programy obiektowe łatwiej jest rozwijać i ponownie wykorzystywać ich fragmenty.
Historia programowania obiektowego
Pierwszy język obiektowy - Simula 67 - powstał już w latach sześćdziesiątych ubiegłego stulecia. Jego twórcami byli Ole-Johan Dahl i Kristen Nygaard z Norsk Regnesentral w Oslo. Podczas ich pracy nad symulacją statków musieli dla każdego rodzaju statku uwzględniać wiele atrybutów. Ponieważ liczba modelowanych rodzaji statków była duża, uwzględnienie wszystkich możliwych zależności między atryburami stało się problematyczne. Pojawił się pomysł, aby pogrupować różne rodzaje statków w klasy obiektów. Każda klasa obiektów sama miała być odpowiedzialna za definiowanie swoich danych i zachowania. Simula była pierwszym językiem programowania, w którym wprowadzono pojęcie klasy i jej egzemplarza. Warto tu zwrócić uwagę, że zgodnie z nazwą języka takie odwzorowanie obiektów spotykanych w świecie rzeczywistym na obiekty pogramowe można nazwać symulacją.
Nie długo potem w laboratorium badawczy Xerox's Palo Alto stworzon Smalltalk. Jego głównym pomysłodawcom był Alan Kay. Smalltalk zawierał wiele rewolucyjnych pomysłów w tym dziedziczenie i zyskał sobie sporą popularność. W pewnej skali był również z powodzeniem stosowany w praktyce. Standardem przemysłowym programowanie obiektowe stałos się jednak dopiero w latach dziewięćdziesiątych za sprawą języka C++, który jest obiektowym rozszerzeniem C. Obecnie najpopularniejszym językiem obiektowym i równocześnie najpopularniejszym językiem programowania w ogóle jest Java.
Znajomość języka obiektowego takiego jak Java jest niezbędna, aby zostać programistom obiektowym, jednak zgodnie z powiedzeniem "posiadanie młotka nie czyni architektem" zanim przyjrzymy się konstrukcjom spotykanym w obiektowych językach programowania wyjaśnijmy kilka pojęć i nauczmy się tego co najważniejsze, czyli co to znaczy myśleć obietowo.