Podejście obiektowe wprowadzenie

Wielkość: px
Rozpocząć pokaz od strony:

Download "Podejście obiektowe wprowadzenie"

Transkrypt

1 wprowadzenie Bogdan Kreczmer Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2013 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania obiektowego. Jest on udostępniony pod warunkiem wykorzystania wyłącznie do własnych prywatnych potrzeb i może on być kopiowany wyłącznie w całości, razem z niniejszą stroną tytułową. wprowadzenie

2 Niniejsza prezentacja została wykonana przy użyciu systemu składu L A TEX oraz stylu beamer, którego autorem jest Till Tantau. Strona domowa projektu Beamer:

3 Moje dane Bogdan Kreczmer, dr inż., pok. 307 bud. C-3 Terminy konsultacji: wt. 13:00 15:00 pt. 13:00 15:00 Strona kursu: kreczmer/kpo kreczmer/kpo

4 Organizacja kursu Warunki udziału w kursie Wykłady i materiały do wykładów Laboratoria

5 Organizacja kursu Warunki udziału w kursie Wykłady i materiały do wykładów Laboratoria

6 Organizacja kursu Warunki udziału w kursie Wykłady i materiały do wykładów Laboratoria

7 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

8 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

9 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

10 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

11 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

12 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

13 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

14 Warunki zaliczeń Kurs kończy się egzaminem. Do egzaminu można przystąpić pod warunkiem uzyskania zaliczenia z laboratorium Istnieje możliwość zwolnienia z egzaminu na podstawie oceny z laboratorium i wyniku z ekranówki. Przewidywana jest ona w 14 tygodniu zajęć. Warunki zwolnienia: ocena z laboratorium 5,0, ocena z ekranówki 4,0 ocena z laboratorium = 4,5, ocena z ekranówki 4,5 Ocena celująca ekranówka: 5,0; laboratorium: 5,5 sposób liczenia oceny z kursu: 10 ( )(E + L) (E L) 2 Ocena celująca egzamin: 5,0; laboratorium: 5,5 egzamin: 5,5; laboratorium: 5,0

15 Egzamin Propozycje daty egzaminu termin I termin II

16 Literatura Literatura podstawowa: S. B. Leppman, Josée Lajoie, B. E. Moo C++ Primer, 2012 Bjarne Stroustrup, Język C++, WNT, 2002 J. Grębosz, Symfonia C ++ standard J. Grębosz, Pasja C ++

17 Literatura Literatura pomocnicza: B. Eckel, Thinking in C++ Nicolai M. Josuttis, C++ Biblioteka standardowa, Podręcznik programisty David Vandevoorde, Nicolai M. Josuttis, C++ szablony Grady Booch, James Rumbaugh, Ivar Jacobson, UML użytkownika przewodnik Michał Śmiałek, Zrozumieć UML 2.0 Metody modelowania obiektowego, HELION 2005 James Martin, James J. Odell, Podstawy metod obiektowych

18 Spis treści 1

19 Czym jest pojęcie oparte jest na podejściu obiektowym do analizy problemu oraz syntezy i implementacji jego rozwiązania.

20 Czym jest pojęcie oparte jest na podejściu obiektowym do analizy problemu oraz syntezy i implementacji jego rozwiązania. bazuje na fundamentalnej cesze aktywności intelektualnej, która pozwala ludziom (i nie tylko) wyróżniać odrębne obiekty w swoim otoczeniu, przypisywać im własności oraz określać sposób ich interakcji między sobą i otoczeniem.

21 Czym jest pojęcie oparte jest na podejściu obiektowym do analizy problemu oraz syntezy i implementacji jego rozwiązania. bazuje na fundamentalnej cesze aktywności intelektualnej, która pozwala ludziom (i nie tylko) wyróżniać odrębne obiekty w swoim otoczeniu, przypisywać im własności oraz określać sposób ich interakcji między sobą i otoczeniem. Wyróżnianie obiektów może być dokonywane na różne sposoby. Oparte jest ono na obserwacji i wcześniejszej wiedzy.

22 Postrzeganie

23 Postrzeganie

24 Postrzeganie Obserwując otoczenie jesteśmy w stanie wyodrębnić przedmioty...

25 Postrzeganie Obserwując otoczenie jesteśmy w stanie wyodrębnić przedmioty...

26 Postrzeganie Obserwując otoczenie jesteśmy w stanie wyodrębnić przedmioty i przypisać im pojęcia.

27 Postrzeganie Obserwując otoczenie jesteśmy w stanie wyodrębnić przedmioty i przypisać im pojęcia. Proces ten nazywamy postrzeganiem.

28 Postrzeganie Wyodrębnieniu może podlegać zestaw elementów, jako osobna całość.

29 Postrzeganie odnosi się wówczas do zbioru elementów między którymi zachodzą odpowiednie relacje.

30 Postrzeganie Każdemu z elementów może być osobno wyróżniony poprzez przypisanie mu indywidualnego pojęcia.

31 Postrzeganie Znajdując cechy wspólne wszystkich elementów możemy również przyporządkować pojęcie ich zbiorowi.

32 Czym jest pojęcie Istotnym elementem aktu wyróżnienia jakiegoś tworu lub wyobrażenia abstrakcyjnego jest przypisanie mu pewnego pojęcia.

33 Czym jest pojęcie Istotnym elementem aktu wyróżnienia jakiegoś tworu lub wyobrażenia abstrakcyjnego jest przypisanie mu pewnego pojęcia. jest wyobrażeniem lub oznaczeniem, które stosujemy do rzeczy lub wyobrażeń abstrakcyjnych.

34 Czym jest pojęcie Istotnym elementem aktu wyróżnienia jakiegoś tworu lub wyobrażenia abstrakcyjnego jest przypisanie mu pewnego pojęcia. jest wyobrażeniem lub oznaczeniem, które stosujemy do rzeczy lub wyobrażeń abstrakcyjnych. Przypisywanie pojęć jest możliwe dzięki rozpoznaniu własności wspólnych dla reprezentantów zbiorów, do których stosuje się dane pojęcie.

35 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu.

36 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne

37 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne pojazd budynek atom

38 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne pojazd budynek atom czas poprawność firma

39 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne pojazd budynek atom czas poprawność firma posiadanie przynależność małżeństwo

40 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne pojazd budynek atom czas poprawność firma posiadanie przynależność małżeństwo spotkanie zakup wyjazd

41 Czym jest pojęcie Przyswojenie sobie zbioru pojęć pozwala nadawać znaczenie obiektom znajdującym się w naszym otoczeniu. Przykłady pojęć: materialne niematerialne relacyjne zdarzenia inne pojazd budynek atom czas poprawność firma posiadanie przynależność małżeństwo spotkanie zakup wyjazd wzorowy nietypowy ikona

42 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia

43 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia

44 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia

45 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia Intensja jest pełną definicją pojęcia i testu określającego, czy dane pojęcie odnosi się do danej rzeczy lub wyobrażenia abstrakcyjnego.

46 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia Intensja jest pełną definicją pojęcia i testu określającego, czy dane pojęcie odnosi się do danej rzeczy lub wyobrażenia abstrakcyjnego. Ekstensja jest zbiorem wszystkich rzeczy i wyobrażeń abstrakcyjnych, do których stosuje się dane pojęcie.

47 Czym jest pojęcie Termin pojęcie zawiera: intensję treść pojęcia ekstensję zakres pojęcia Intensja jest pełną definicją pojęcia i testu określającego, czy dane pojęcie odnosi się do danej rzeczy lub wyobrażenia abstrakcyjnego. Ekstensja jest zbiorem wszystkich rzeczy i wyobrażeń abstrakcyjnych, do których stosuje się dane pojęcie. Trójka pojęciowa = (nazwa, intensja, ekstensja)

48 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja)

49 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy

50 Przykłady trójek pojęciowych nazwa Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy intensja ekstensja

51 Przykłady trójek pojęciowych nazwa Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy Robot przemysłowy intensja ekstensja

52 Przykłady trójek pojęciowych nazwa Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy Robot przemysłowy intensja ekstensja Maszyna manipulacyjna sterowana automatycznie za pomocą sygnałów generowanych w programowalnym układzie sterowania.

53 Przykłady trójek pojęciowych nazwa Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy Robot przemysłowy intensja Maszyna manipulacyjna sterowana automatycznie za pomocą sygnałów generowanych w programowalnym układzie sterowania. ekstensja irb-6, IRB1400, Puma 560,...

54 Przykłady trójek pojęciowych nazwa Trójka pojęciowa = (nazwa, intensja, ekstensja) Robot przemysłowy Robot przemysłowy intensja Maszyna manipulacyjna sterowana automatycznie za pomocą sygnałów generowanych w programowalnym układzie sterowania. ekstensja irb-6, IRB1400, Puma 560,...

55 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) nazwa intensja ekstensja

56 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Idealny człowiek nazwa intensja ekstensja

57 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Idealny człowiek nazwa Idealny człowiek intensja ekstensja

58 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Idealny człowiek nazwa Idealny człowiek intensja ekstensja Uczciwy, rzetelny,...

59 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Idealny człowiek nazwa Idealny człowiek intensja ekstensja Uczciwy, rzetelny,...

60 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Idealny człowiek nazwa Idealny człowiek intensja ekstensja Uczciwy, rzetelny,... Niektóre pojęcia mogą nie mieć swoich reprezentantów.

61 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) nazwa intensja ekstensja

62 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) 40S25 nazwa intensja ekstensja

63 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) 40S25 nazwa 40S25 intensja ekstensja

64 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) 40S25 nazwa 40S25 intensja ekstensja

65 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) 40S25 nazwa 40S25 intensja ekstensja 40S25, 40S25,...

66 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) 40S25 nazwa 40S25 intensja ekstensja 40S25, 40S25,... może nie mieć swojej definicji. Przykład układu scalonego, którego dokumentacja i opis zostały zagubione.

67 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) nazwa intensja ekstensja

68 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa intensja ekstensja

69 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja ekstensja

70 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja ekstensja Osoba lub organizacja kupująca dobra lub usługi.

71 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja Osoba lub organizacja kupująca dobra lub usługi. ekstensja Jan Kowalski, Firma Jana Kowalskiego

72 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja Osoba lub organizacja kupująca dobra lub usługi. ekstensja Jan Kowalski, Firma Jana Kowalskiego

73 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient, Interesant nazwa Klient, Interesant intensja Osoba lub organizacja kupująca dobra lub usługi. ekstensja Jan Kowalski, Firma Jana Kowalskiego

74 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient, Interesant nazwa Klient, Interesant intensja Osoba lub organizacja kupująca dobra lub usługi. ekstensja Jan Kowalski, Firma Jana Kowalskiego Pojęcia mogą mieć synonimy.

75 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja Osoba lub organizacja kupująca dobra lub usługi. ekstensja Jan Kowalski, Firma Jana Kowalskiego

76 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja Osoba lub organizacja kupująca dobra lub usługi. Aplikacja programowa, która żąda od innej aplikacji realizacji usług. ekstensja Jan Kowalski, Firma Jana Kowalskiego xclock, xterm,...

77 Przykłady trójek pojęciowych Trójka pojęciowa = (nazwa, intensja, ekstensja) Klient nazwa Klient intensja Osoba lub organizacja kupująca dobra lub usługi. Aplikacja programowa, która żąda od innej aplikacji realizacji usług. ekstensja Jan Kowalski, Firma Jana Kowalskiego xclock, xterm,... Pojęcia mogą mieć homonimy.

78 Obiekt?! Co to takiego???

79 Obiektem jest to coś, do czego da się zastosować jakieś pojęcie. Tak więc obiekt jest egzemplarzem pojęcia.

80 Obiektem jest to coś, do czego da się zastosować jakieś pojęcie. Tak więc obiekt jest egzemplarzem pojęcia. = robot przemysłowy

81 Obiektem jest to coś, do czego da się zastosować jakieś pojęcie. Tak więc obiekt jest egzemplarzem pojęcia. = robot przemysłowy Obiekt = konkretny egzemplarz robota, np. robota IRB1400

82 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

83 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

84 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

85 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

86 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

87 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

88 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

89 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

90 Własności: Obiekt może mieć cechy, którym przypisywane są nazwy, np. kulistość. Obiekt może mieć atrybuty, np. promień kuli. Obiektowi możemy przyporządkować stan. Stan obiektu jest kolekcją atrybutów i związków dotyczących danego obiektu. Zmiana stanu jest zmianą atrybutu i/lub związków danego obiektu (np. położenie obiektu x, y, z). Obiekt może mieć pewien ograniczony czas życia. Obiekt może być powiązany z innymi obiektami poprzez odwzorowania lub relacje. Odwzorowania i relacje mogą także być modelowane jako obiekty.

91 Typ obiektowy Typ obiektowy???

92 Typ obiektowy Typ obiektowy jest pojęciem, tzn. jest koncepcją lub ideą, którą stosujemy do obiektów występujących w naszej świadomości.

93 Typ obiektowy Typ obiektowy jest pojęciem, tzn. jest koncepcją lub ideą, którą stosujemy do obiektów występujących w naszej świadomości. Typ obiektowy jest typem obiektu.

94 Typ obiektowy Typ obiektowy jest pojęciem, tzn. jest koncepcją lub ideą, którą stosujemy do obiektów występujących w naszej świadomości. Typ obiektowy jest typem obiektu. Przykład typów obiektowych: robot przemysłowy, pojazd, idealny człowiek, wektor, równanie liniowe.

95 Typ obiektowy Własności: Typ obiektowy jest też pojęciem. Do pojedynczego obiektu może stosować się wiele pojęć (typów obiektowych). Typy obiektowe mogą tworzyć hierarchię od bardzo ogólnych pojęć do pojęć szczegółowych.

96 Typ obiektowy Własności: Typ obiektowy jest też pojęciem. Do pojedynczego obiektu może stosować się wiele pojęć (typów obiektowych). Typy obiektowe mogą tworzyć hierarchię od bardzo ogólnych pojęć do pojęć szczegółowych.

97 Typ obiektowy Własności: Typ obiektowy jest też pojęciem. Do pojedynczego obiektu może stosować się wiele pojęć (typów obiektowych). Typy obiektowe mogą tworzyć hierarchię od bardzo ogólnych pojęć do pojęć szczegółowych.

98 Typ obiektowy Własności: Typ obiektowy jest też pojęciem. Do pojedynczego obiektu może stosować się wiele pojęć (typów obiektowych). Typy obiektowe mogą tworzyć hierarchię od bardzo ogólnych pojęć do pojęć szczegółowych.

99 Przykład hierarchii maszyna pojazd samochód Ferrante V Concept

100 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego.

101 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uogólnienia:

102 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uogólnienia: Samochód

103 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uogólnienia: Pojazd Samochód

104 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uogólnienia: Pojazd Samochód Uogólnienie jest aktem lub wynikiem wyróżnienia typu obiektowego, który całkowicie zawiera (obejmuje) inny typ obiektowy.

105 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uszczegółowienia:

106 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uszczegółowienia: Pojazd

107 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uszczegółowienia: Pojazd Quad

108 Hierarchie typów obiektowych Hierarchie typów obiektowych możemy tworzyć poprzez uogólnienie lub uszczegółowienie danego typu obiektowego. Przykład uszczegółowienia: Pojazd Quad Specjalizowanie jest aktem lub wynikiem wyróżnienia typu obiektowego, który całkowicie zawiera się w innym typie obiektowym.

109 Hierarchia typów Typ

110 Hierarchia typów Nadtyp Typ

111 Hierarchia typów Nadtyp Typ Podtyp

112 Hierarchia typów Nadtyp Typ definicja jest ogólniejsza niż definicja innego typu, którego elementy zawarte są w zbiorze danego typu obiektowego. Podtyp

113 Hierarchia typów Nadtyp Typ Podtyp definicja jest ogólniejsza niż definicja innego typu, którego elementy zawarte są w zbiorze danego typu obiektowego. definicja jest bardziej wyspecjalizowana niż definicja innego typu zawierającego między innymi również te same obiekty.

114 Hierarchia typów przykład Nadtyp Typ Podtyp

115 Hierarchia typów przykład Nadtyp Typ Samochód Podtyp

116 Hierarchia typów przykład Nadtyp Pojazd Typ Samochód Podtyp

117 Hierarchia typów przykład Nadtyp Pojazd Typ Samochód Podtyp Kabriolet

118 Hierarchie typów obiektowych Uogólnienie i specjalizowanie pozwalają tworzyć hierarchię abstrakcji. Pomagają one lepiej zrozumieć znaczenie danego typu obiektowego w kontekście hierarchii typów. Tym samym pomagają lepiej zamodelować rozwiązanie problemu.

119 Hierarchie typów obiektowych Uogólnienie i specjalizowanie pozwalają tworzyć hierarchię abstrakcji. Pomagają one lepiej zrozumieć znaczenie danego typu obiektowego w kontekście hierarchii typów. Tym samym pomagają lepiej zamodelować rozwiązanie problemu.

120 Hierarchie typów obiektowych Uogólnienie i specjalizowanie pozwalają tworzyć hierarchię abstrakcji. Pomagają one lepiej zrozumieć znaczenie danego typu obiektowego w kontekście hierarchii typów. Tym samym pomagają lepiej zamodelować rozwiązanie problemu.

121 Hierarchie typów obiektowych Uogólnienie i specjalizowanie pozwalają tworzyć hierarchię abstrakcji. Pomagają one lepiej zrozumieć znaczenie danego typu obiektowego w kontekście hierarchii typów. Tym samym pomagają lepiej zamodelować rozwiązanie problemu. Jak w językach programowania wspierane jest tworzenie hierarchii typów?

122 Hierarchie typów obiektowych Uogólnienie i specjalizowanie pozwalają tworzyć hierarchię abstrakcji. Pomagają one lepiej zrozumieć znaczenie danego typu obiektowego w kontekście hierarchii typów. Tym samym pomagają lepiej zamodelować rozwiązanie problemu. Do definiowania podtypów w językach programowania wspierających paradygmat obiektowy wykorzystywane jest dziedziczenie.

123 Dziedziczenie Istnieją dwa typy dziedziczenia: jednobazowe wielobazowe

124 Dziedziczenie Istnieją dwa typy dziedziczenia: jednobazowe wielobazowe

125 Dziedziczenie Istnieją dwa typy dziedziczenia: jednobazowe wielobazowe

126 Dziedziczenie Istnieją dwa typy dziedziczenia: jednobazowe dany typ dziedziczy bezpośrednio tylko jeden nadtyp, wielobazowe

127 Dziedziczenie Istnieją dwa typy dziedziczenia: jednobazowe dany typ dziedziczy bezpośrednio tylko jeden nadtyp, wielobazowe dany typ może dziedziczyć bezpośrednio wiele nadtypów.

128 Dziedziczenie Przykład: jednobazowe wielobazowe

129 Dziedziczenie Przykład: jednobazowe Jabłko wielobazowe

130 Dziedziczenie Przykład: jednobazowe Owoc Jabłko wielobazowe

131 Dziedziczenie Przykład: jednobazowe Owoc Jabłko wielobazowe Dźwig samobieżny

132 Dziedziczenie Przykład: jednobazowe wielobazowe Dźwig Owoc Jabłko Pojazd Dźwig samobieżny

133 Metody Cechą charakterystyczną podejścia obiektowego i języków obiektowych jest ścisłe powiązanie operacji z danymi, na których są one wykonywane.

134 Metody Cechą charakterystyczną podejścia obiektowego i języków obiektowych jest ścisłe powiązanie operacji z danymi, na których są one wykonywane. Przejawem tego jest to, że dla każdego typu obiektowego można zdefiniować metody.

135 Metody Cechą charakterystyczną podejścia obiektowego i języków obiektowych jest ścisłe powiązanie operacji z danymi, na których są one wykonywane. Przejawem tego jest to, że dla każdego typu obiektowego można zdefiniować metody. Metoda jest specyfikacją sposobu wykonania sekwencji operacji.

136 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

137 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

138 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

139 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

140 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

141 Podsumowanie - najważniejsze terminy Obiekt Typ obiektowy Metoda Dziedziczenie Polimorfizm

142 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza Projektowanie Konstrukcja

143 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza Projektowanie Konstrukcja

144 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza Projektowanie Konstrukcja

145 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza Projektowanie Konstrukcja

146 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza jest odwzorowaniem rzeczywistego świata na jego model koncepcyjny Projektowanie Konstrukcja

147 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza jest odwzorowaniem rzeczywistego świata na jego model koncepcyjny Projektowanie jest odwzorowaniem modelu koncepcyjnego na model implementacji. Konstrukcja

148 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza jest odwzorowaniem rzeczywistego świata na jego model koncepcyjny Projektowanie jest odwzorowaniem modelu koncepcyjnego na model implementacji. Konstrukcja jest odwzorowaniem modelu implementacji na działający system.

149 Skąd się biorą typy Przejściu od sformułowania problemu do jego rozwiązania w postaci działające systemu towarzyszą zwykle trzy fazy: Analiza jest odwzorowaniem rzeczywistego świata na jego model koncepcyjny Projektowanie jest odwzorowaniem modelu koncepcyjnego na model implementacji. Konstrukcja jest odwzorowaniem modelu implementacji na działający system. Etapy te nie muszą przebiegać sekwencyjnie. Wszystko zależy od przyjętych technik i strategii rozwiązywania danego problemu.

150 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a

151 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b =?

152 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b =?

153 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b =?

154 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

155 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

156 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

157 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

158 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

159 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = Dodaj(x,y); x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

160 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol Dodaj( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = x + y; x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

161 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol operator + ( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } wynik = x + y; x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

162 Arytmetyka symboli enum Symbol { e, a, b }; Symbol TabliczkaDzialania[3][3] = { { e, a, b }, { a, b, e }, { b, e, a } }; Symbol operator + ( Symbol x, Symbol y ) { return TabliczkaDzialania[x][y]; } int main( ) { Symbol } x = a, y = b, wynik; wynik = operator + (x, y); Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

163 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

164 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } wynik = x + y; x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

165 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; wynik = x + y; wynik = Dodaj(x, y); Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

166 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; wynik = x + y; wynik = Dodaj(x, y); wynik = operator+ (x, y); Tabliczka działania + e a b e e a b a a b e b b e a a + b = e

167 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; Tabliczka działania + e a b e e a b a a b e b b e a a + (b + a) =?

168 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; wynik = x + (y + x); Tabliczka działania + e a b e e a b a a b e b b e a a + (b + a) =?

169 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; wynik = x + (y + x); wynik = Dodaj(x, Dodaj(y, x) ); Tabliczka działania + e a b e e a b a a b e b b e a a + (b + a) =?

170 Arytmetyka symboli enum Symbol { e, a, b };... Symbol Dodaj( Symbol x, Symbol y ); Symbol operator + ( Symbol x, Symbol y );... int main( ) { Symbol } x = a, y = b, wynik; wynik = x + (y + x); wynik = Dodaj(x, Dodaj(y, x) ); wynik = operator+ (x, operator+ (y, x) ); Tabliczka działania + e a b e e a b a a b e b b e a a + (b + a) =?

171 Koniec prezentacji wprowadzenie

Podejście obiektowe - podstawowe pojęcia

Podejście obiektowe - podstawowe pojęcia Podejście obiektowe - podstawowe pojęcia Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2003 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Bogdan Kreczmer. Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska

Bogdan Kreczmer. Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Podejście obiektowe, przeciążenia operatorów, referencje Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska

Bardziej szczegółowo

Organizacja kursu, paradygmaty, ogólnie o C i C++

Organizacja kursu, paradygmaty, ogólnie o C i C++ Organizacja kursu, paradygmaty, ogólnie o C i C++ Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechniki Wrocławskiej Kurs: Copyright c 2015 Bogdan

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Wprowadzenie do UML, przykład użycia kolizja

Wprowadzenie do UML, przykład użycia kolizja Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2012 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Wprowadzenie do szablonów klas

Wprowadzenie do szablonów klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2008-2010 Bogdan Kreczmer Niniejszy

Bardziej szczegółowo

Diagramy UML, przykład problemu kolizji

Diagramy UML, przykład problemu kolizji Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Kurs: Copyright c 2015 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Schemat konstrukcja pliku Makefile

Schemat konstrukcja pliku Makefile Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2008 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Wprowadzenie do szablonów szablony funkcji

Wprowadzenie do szablonów szablony funkcji Wprowadzenie do szablonów szablony funkcji Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2006 2010 Bogdan Kreczmer Niniejszy dokument zawiera materiały do

Bardziej szczegółowo

Wprowadzenie do szablonów szablony funkcji

Wprowadzenie do szablonów szablony funkcji Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2006 2010 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.

Bardziej szczegółowo

Dalmierze optyczne. Bogdan Kreczmer. bogdan.kreczmer@pwr.wroc.pl

Dalmierze optyczne. Bogdan Kreczmer. bogdan.kreczmer@pwr.wroc.pl Dalmierze optyczne Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2013 Bogdan Kreczmer

Bardziej szczegółowo

Praca z aplikacją designer

Praca z aplikacją designer Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2014 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Przestrzenie nazw. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

Przestrzenie nazw. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Politechnika Wrocławska Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Katedra Cybernetyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2018 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania

Bardziej szczegółowo

Modelowanie danych, projektowanie systemu informatycznego

Modelowanie danych, projektowanie systemu informatycznego Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym

Bardziej szczegółowo

Qt sygnały i sloty. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska

Qt sygnały i sloty. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Qt sygnały i sloty Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Kurs: Copyright c 2018 Bogdan Kreczmer Niniejszy dokument zawiera

Bardziej szczegółowo

Języki Programowania Obiektowego

Języki Programowania Obiektowego Języki Programowania Obiektowego Kod przedmiotu: JPO Rodzaj przedmiotu: kierunkowy; obowiązkowy. Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): - Poziom studiów: pierwszego stopnia

Bardziej szczegółowo

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

Paweł Kurzawa, Delfina Kongo

Paweł Kurzawa, Delfina Kongo Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management

Bardziej szczegółowo

Czujniki PSD i dalmierze triangulacyjne

Czujniki PSD i dalmierze triangulacyjne Czujniki PSD i dalmierze triangulacyjne Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechniki Wrocławskiej Kurs: Copyright c 2015 Bogdan Kreczmer

Bardziej szczegółowo

Qt sygnały i designer

Qt sygnały i designer Qt sygnały i designer Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2015 Bogdan

Bardziej szczegółowo

Technologie obiektowe

Technologie obiektowe WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność

Bardziej szczegółowo

1 Projektowanie systemu informatycznego

1 Projektowanie systemu informatycznego Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................

Bardziej szczegółowo

Wyliczanie wyrażenia obiekty tymczasowe

Wyliczanie wyrażenia obiekty tymczasowe Wyliczanie wyrażenia obiekty tymczasowe Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2013 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

Rok akademicki: 2012/2013 Kod: EAR-1-206-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Rok akademicki: 2012/2013 Kod: EAR-1-206-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: - Nazwa modułu: Informatyka 1 Rok akademicki: 2012/2013 Kod: EAR-1-206-s Punkty ECTS: 3 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek: Automatyka i Robotyka Specjalność:

Bardziej szczegółowo

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski INFORMATYKA W ZARZĄDZANIU Wykład VI dr Jan Kazimirski jankazim@mac.edu.pl http://www.mac.edu.pl/jankazim MODELOWANIE SYSTEMÓW UML Literatura Joseph Schmuller UML dla każdego, Helion 2001 Perdita Stevens

Bardziej szczegółowo

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska OpenGL oświetlenie Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2017 Bogdan Kreczmer Niniejszy dokument zawiera

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja

Bardziej szczegółowo

Techniki modelowania programów Kod przedmiotu

Techniki modelowania programów Kod przedmiotu Techniki modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Techniki modelowania programów Kod przedmiotu 11.3-WI-INFD-TMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

Style programowania - krótki przeglad

Style programowania - krótki przeglad Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.

Bardziej szczegółowo

Wykład 1. Program przedmiotu. Programowanie (język C++) Literatura. Program przedmiotu c.d.:

Wykład 1. Program przedmiotu. Programowanie (język C++) Literatura. Program przedmiotu c.d.: Program przedmiotu Programowanie (język C++) Wykład 1. Język C a C++. Definiowanie prostych klas. Typy referencyjne. Domyślne wartości argumentów. PrzeciąŜanie funkcji. Konstruktory, destruktory. Definiowanie

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Pola i metody statyczne

Pola i metody statyczne Pola i metody statyczne Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2009 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania

Bardziej szczegółowo

Czujniki PSD i dalmierze triangulacyjne

Czujniki PSD i dalmierze triangulacyjne Czujniki PSD i dalmierze triangulacyjne Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechniki Wrocławskiej Kurs: Copyright c 2016 Bogdan Kreczmer

Bardziej szczegółowo

Podstawy Programowania

Podstawy Programowania Podstawy Programowania dr Elżbieta Gawrońska gawronska@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej dr Elżbieta Gawrońska (ICIS) Podstawy Programowania 01 1 / 9 Plan wykładu 1 Informacje

Bardziej szczegółowo

Wykład 1. Program przedmiotu. Programowanie Obiektowe (język C++) Literatura. Program przedmiotu c.d.:

Wykład 1. Program przedmiotu. Programowanie Obiektowe (język C++) Literatura. Program przedmiotu c.d.: Program przedmiotu Programowanie Obiektowe (język C++) Wykład 1. Definiowanie prostych klas. Przykłady. Przypomnienie: typy referencyjne, domyślne wartości argumentów, przeciąŝanie funkcji. Konstruktory,

Bardziej szczegółowo

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska Katedra Cybernetyki i Robotyki Politechnika Wrocławska Kurs: Zaawansowane metody programowania Copyright c 2014 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania

Bardziej szczegółowo

Programowanie obiektowe 2 - opis przedmiotu

Programowanie obiektowe 2 - opis przedmiotu Programowanie obiektowe 2 - opis przedmiotu Informacje ogólne Nazwa przedmiotu Programowanie obiektowe 2 Kod przedmiotu 11.3-WK-MATP-PO2-L-S14_pNadGenDGV9E Wydział Kierunek Wydział Matematyki, Informatyki

Bardziej szczegółowo

Zajęcia trwają 15 tygodni (2 godziny wykładu, 2 godziny laboratorium tygodniowo) Zaliczenie zajęć jest uwarunkowane zaliczeniem zajęć laboratoryjnych

Zajęcia trwają 15 tygodni (2 godziny wykładu, 2 godziny laboratorium tygodniowo) Zaliczenie zajęć jest uwarunkowane zaliczeniem zajęć laboratoryjnych Regulamin przedmiotu: Języki Programowania Zajęcia trwają 15 tygodni (2 godziny wykładu, 2 godziny laboratorium tygodniowo) Zaliczenie zajęć jest uwarunkowane zaliczeniem zajęć laboratoryjnych Prowadzący

Bardziej szczegółowo

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl

Bardziej szczegółowo

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,

Bardziej szczegółowo

Podstawy modelowania programów Kod przedmiotu

Podstawy modelowania programów Kod przedmiotu Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

Automatyka i Robotyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny)

Automatyka i Robotyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014

Bardziej szczegółowo

Metodyki i techniki programowania

Metodyki i techniki programowania Metodyki i techniki programowania dr inż. Maciej Kusy Katedra Podstaw Elektroniki Wydział Elektrotechniki i Informatyki Politechnika Rzeszowska Elektronika i Telekomunikacja, sem. 2 Plan wykładu Sprawy

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language) Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu

Bardziej szczegółowo

K_W04 K_W04 K_W04. Opis

K_W04 K_W04 K_W04. Opis Załącznik nr 5 do Uchwały nr 1202 Senatu UwB z dnia 29 lutego 2012 r. Programowanie w Jawie nazwa A. Informacje ogólne Tę część wypełnia koordynator (w porozumieniu ze wszystkimi prowadzącymi dany przedmiot

Bardziej szczegółowo

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Programowanie obiektowe (Java) Nazwa modułu w języku angielskim Object oriented

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017 Załącznik nr 4 do Uchwały Senatu nr 430/01/2015 SYLABUS DOTYCZY CYKLU KSZTAŁCENIA 2016-2020 realizacja w roku akademickim 2016/2017 1.1. Podstawowe informacje o przedmiocie/module Nazwa przedmiotu/ modułu

Bardziej szczegółowo

Programowanie obiektowe Object-Oriented Programming. Automatyka i Robotyka II stopień ogólnoakademicki

Programowanie obiektowe Object-Oriented Programming. Automatyka i Robotyka II stopień ogólnoakademicki Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, laboratorium PROGRAMOWANIE OBIEKTOWE Object-Oriented Programming

Bardziej szczegółowo

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne Programowanie w Javie nazwa SYLABUS A. Informacje ogólne Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Kod Język

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 03 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas abstrakcyjnych i interfejsów. Wprowadzenie

Bardziej szczegółowo

Świat rzeczywisty i jego model

Świat rzeczywisty i jego model 2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),

Bardziej szczegółowo

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja

Bardziej szczegółowo

Wykład 9: Polimorfizm i klasy wirtualne

Wykład 9: Polimorfizm i klasy wirtualne Programowanie obiektowe Wykład 9: i klasy wirtualne 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD Programowanie obiektowe i metody wirtualne 2 W programowaniu obiektowym polimorfizm

Bardziej szczegółowo

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig Modelowanie Obiektowe Wykład 1: Wprowadzenie do Modelowania i języka UML Anna Kulig Wprowadzenie do modelowania Zasady Pojęcia Wprowadzenie do języka UML Plan wykładu Model jest uproszczeniem rzeczywistości.

Bardziej szczegółowo

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych Modelowanie klas i obiektów Jarosław Kuchta Podstawowe pojęcia (1) Byt, encja (entity) coś co istnieje, posiada własne cechy i wyodrębnioną tożsamość (identity); bytem może być rzecz, osoba, organizacja,

Bardziej szczegółowo

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Podstawy algorytmiki i programowania - wykład 4 C-struktury 1 Podstawy algorytmiki i programowania - wykład 4 C-struktury Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy

Bardziej szczegółowo

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++ Jednostka prowadząca: Wydział Techniczny Kierunek studiów: Elektronika i telekomunikacja Nazwa przedmiotu: Język programowania C++ Charakter przedmiotu: podstawowy, obowiązkowy Typ studiów: inŝynierskie

Bardziej szczegółowo

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa

Bardziej szczegółowo

Wykład 9: Metody wirtualne i polimorfizm

Wykład 9: Metody wirtualne i polimorfizm Języki programowania C i C++ Wykład 9: Metody wirtualne i polimorfizm 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD Podstawy programowania w C++ 2 to funkcje składowe, które przydają się szczególnie,

Bardziej szczegółowo

Metodyki i techniki programowania

Metodyki i techniki programowania Metodyki i techniki programowania dr inż. Maciej Kusy Katedra Podstaw Elektroniki Wydział Elektrotechniki i Informatyki Politechnika Rzeszowska Elektronika i Telekomunikacja, sem. 2 Plan wykładu Sprawy

Bardziej szczegółowo

Języki Programowania z Programowaniem Obiektowym wykład (15 godzin/semestr) laboratorium (30 godzin/semestr)

Języki Programowania z Programowaniem Obiektowym wykład (15 godzin/semestr) laboratorium (30 godzin/semestr) Języki Programowania z Programowaniem Obiektowym wykład (15 godzin/semestr) laboratorium (30 godzin/semestr) Prowadzący wykład: Dr inż. Radosław Górski Pokój 105, tel. (32) 237 10 20 e-mail: Radoslaw.Gorski@polsl.pl

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA. laboratorium

INŻYNIERIA OPROGRAMOWANIA. laboratorium INŻYNIERIA OPROGRAMOWANIA laboratorium UML 1/4 UML (Unified Modeling Language) - język modelowania obiektowego systemów i procesów [Wikipedia] Spojrzenie na system z różnych perspektyw dzięki zastosowaniu

Bardziej szczegółowo

Modelowanie obiektowe

Modelowanie obiektowe Modelowanie obiektowe ZPO 2018/2019 Dr inż. W. Cichalewski Materiały wykonane przez W. Tylman Diagramy klas Diagramy klas Zawiera informacje o statycznych związkach między elementami (klasami) Są ściśle

Bardziej szczegółowo

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Wprowadzenie Modelowanie biznesowe jest stykiem między

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES)

Elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Programowanie komputerów 2 Nazwa modułu w języku angielskim Computer programming

Bardziej szczegółowo

Diagramy czynności Na podstawie UML 2.0 Tutorial

Diagramy czynności Na podstawie UML 2.0 Tutorial Diagramy czynności Na podstawie UML 2.0 Tutorial http://sparxsystems.com.au/resources/uml2_tutorial/ Zofia Kruczkiewicz 1 Diagramy czynności 1. Diagramy czyności UML http://sparxsystems.com.au/resources/uml2_tutorial/

Bardziej szczegółowo

Zasoby, pliki graficzne

Zasoby, pliki graficzne Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2017 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2011/2012 Pracownia nr 1 (14.10.2011) Rok akademicki 2011/2012,

Bardziej szczegółowo

KARTA KURSU. Programowanie obiektowe

KARTA KURSU. Programowanie obiektowe KARTA KURSU Nazwa Nazwa w j. ang. Programowanie obiektowe Object oriented programming Kod Punktacja ECTS* Stacjonarne 6 Niestacjonarne 4 Koordynator dr Dariusz Pałka Zespół dydaktyczny: dr Dariusz Pałka

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej

Bardziej szczegółowo

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Programowanie I C6

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Programowanie I C6 KARTA PRZEDMIOTU 1. Informacje ogólne Nazwa przedmiotu i kod (wg planu studiów): Nazwa przedmiotu (j. ang.): Kierunek studiów: Specjalność/specjalizacja: Poziom kształcenia: Profil kształcenia: Forma studiów:

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład: klasa, obiekt, po co używać klas, właściwości, atrybuty, funkcje, zachowania, metody, przykładowe obiekty, definiowanie klasy, obiektu, dostęp do składników klasy, public,

Bardziej szczegółowo

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Przedmioty kierunkowe

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Przedmioty kierunkowe Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu obowiązuje w roku akademickim 01/013 Kierunek studiów: Informatyka Forma studiów: Stacjonarne Profil:

Bardziej szczegółowo

Programowanie obiektowe 1 - opis przedmiotu

Programowanie obiektowe 1 - opis przedmiotu Programowanie obiektowe 1 - opis przedmiotu Informacje ogólne Nazwa przedmiotu Programowanie obiektowe 1 Kod przedmiotu 11.3-WK-IDP-PO1-W-S14_pNadGenHESI2 Wydział Kierunek Wydział Matematyki, Informatyki

Bardziej szczegółowo

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji. JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod

Bardziej szczegółowo

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Programowanie II C16

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Programowanie II C16 KARTA PRZEDMIOTU 1. Informacje ogólne Nazwa przedmiotu i kod (wg planu studiów): Nazwa przedmiotu (j. ang.): Kierunek studiów: Specjalność/specjalizacja: Poziom kształcenia: Profil kształcenia: Forma studiów:

Bardziej szczegółowo

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Diagramy interakcji Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania.

Bardziej szczegółowo

Geneza powstania języka C++

Geneza powstania języka C++ Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.

Bardziej szczegółowo

Konstruktor kopiujacy

Konstruktor kopiujacy Konstruktor kopiujacy Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego. Jest on udostępniony

Bardziej szczegółowo

Programowanie obiektowe - 1.

Programowanie obiektowe - 1. Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która

Bardziej szczegółowo

Technologie i usługi internetowe cz. 2

Technologie i usługi internetowe cz. 2 Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,

Bardziej szczegółowo

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2012/2013

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2012/2013 Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu obowiązuje studentów rozpoczynających studia w roku akademickim 01/013 Wydział Fizyki, Matematyki i Informatyki Kierunek studiów: Informatyka

Bardziej szczegółowo

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe

Bardziej szczegółowo

Projektowanie interakcji. Jarosław Kuchta

Projektowanie interakcji. Jarosław Kuchta Projektowanie interakcji Jarosław Kuchta Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja występuje w kontekście

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2014/2015. Forma studiów: Stacjonarne Kod kierunku: 11.

Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2014/2015. Forma studiów: Stacjonarne Kod kierunku: 11. Państwowa Wyższa Szko la Zawodowa w Nowym Sa czu Karta przedmiotu Instytut Techniczny obowiązuje studentów rozpoczynających studia w roku akademickim 201/201 Kierunek studiów: Informatyka Profil: Ogólnoakademicki

Bardziej szczegółowo

Wybrane problemy z dziedziny modelowania i wdrażania baz danych przestrzennych w aspekcie dydaktyki. Artur Krawczyk AGH Akademia Górniczo Hutnicza

Wybrane problemy z dziedziny modelowania i wdrażania baz danych przestrzennych w aspekcie dydaktyki. Artur Krawczyk AGH Akademia Górniczo Hutnicza Wybrane problemy z dziedziny modelowania i wdrażania baz danych przestrzennych w aspekcie dydaktyki Artur Krawczyk AGH Akademia Górniczo Hutnicza Problem modelowania tekstowego opisu elementu geometrycznego

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia Materiały dla nauczyciela Projekt

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu - zestaw 03 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas abstrakcyjnych i interfejsów. Wprowadzenie teoretyczne. Rozważana

Bardziej szczegółowo

Referencje do zmiennych i obiektów

Referencje do zmiennych i obiektów Referencje do zmiennych i obiektów Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014. Forma studiów: Stacjonarne Kod kierunku: 11.

Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014. Forma studiów: Stacjonarne Kod kierunku: 11. Państwowa Wyższa Szko la Zawodowa w Nowym Sa czu Karta przedmiotu Instytut Techniczny obowiązuje studentów rozpoczynających studia w roku akademickim 201/201 Kierunek studiów: Informatyka Profil: Ogólnoakademicki

Bardziej szczegółowo