Wprowadzenie do programowanie obiektowego w języku C++
|
|
- Tomasz Kucharski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Wprowadzenie do programowanie obiektowego w języku C++ Część pierwsza Podstawy programowania obiektowego Autor Roman Simiński Kontakt romansiminski@usedupl wwwusedupl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim uczestnictwa Opracowanie to jest chronione prawem autorskim Wykorzystywanie jakiegokolwiek fragmentu w celach innych niż nauka własna jest nielegalne Dystrybuowanie tego opracowania lub jakiejkolwiek jego części oraz wykorzystywanie zarobkowe bez zgody autora jest zabronione
2 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Problem Napisać program wyświetlający na pustym ekranie tekstowym zadany znak (np * ), pozwalający na przesuwanie tego znaku przy użyciu klawiszy sterowania kursorem X Y * Copyright Roman Simiński Strona : 2
3 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Analiza Pozycja znaku będzie opisana parą zmiennych x i y, znak będzie sparametryzowany i opisany zmienną code Przesuwanie znaku polega na wymazywaniu znaku z pozycji poprzedniej i ponownym wyświetlaniu na nowej pozycji, o ile jest ona prawidłowa X Y Gdy klawisz LEFT: jeżeli x > 1 to x = x - 1 Gdy klawisz DOWN: jeżeli y < 25 to y = y + 1 * 7980 Gdy klawisz UP: jeżeli y > 1 to y = y - 1 Gdy klawisz RIGHT: jeżeli x < 80 to x = x + 1 Copyright Roman Simiński Strona : 3
4 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Realizacja proceduralna założenia wstępne Programista ma do dyspozycji: Funkcję clearscreen, czyszczącą ekran tekstowy Funkcję writecharxy, wyświetlającą na ekranie znak na określonej pozycji Funkcję getkey, której rezultatem jest kod klawisza, w tym tzw klawiszy sterujących kursorem Stałe określające kody klawiszy, wtym klawiszy sterujących kursorem (dla funkcji getkey): KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_ESC Copyright Roman Simiński Strona : 4
5 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Realizacja proceduralna obsługa klawiatury Znaki sterujące na starszym bajcie, zwykłe na młodszym (notacja szesnastkowa): enum KEY_CODES KEY_UP = 0x4800, KEY_DOWN = 0x5000, KEY_LEFT = 0x4b00, KEY_RIGHT = 0x4d00, KEY_ESC = 0x001b }; Przykładowa implementacja funkcji getkey (biblioteka conio firmy Borland): int getkey( void ) int key = getch(); return ( key == 0 )? getch() << 8 : key; } Copyright Roman Simiński Strona : 5
6 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Realizacja proceduralna obsługa ekranu Wersje wykorzystujące bibliotekę conio (kompilatory firmy Borland) void clearscreen( void ) clrscr(); } void writecharxy( int x, int y, char c ) gotoxy( x, y ); putch( c ); } Copyright Roman Simiński Strona : 6
7 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Realizacja proceduralna najprostsza wersja int key, x = 40, y = 12, code = '*'; clearscreen(); do writecharxy( x, y, code ); /* Wyświetl znak na zadanej pozycji */ key = getkey(); /* Czekaj na naciśnięcie klawisza */ writecharxy( x, y, ' ' ); /* Wyma ż znak, potencjalny ruch */ switch( key ) case KEY_UP : if( y > 1 ) --y; /* Przeskocz wyżej */ break; case KEY_DOWN : if( y < 24 ) ++y; /* Przeskocz niżej */ break; case KEY_LEFT : if( x > 1 ) --x; /* Przeskocz w lewo */ break; case KEY_RIGHT : if( x < 80 ) ++x; /* Przeskocz w prawo */ break; } } while( key!= KEY_ESC ); Copyright Roman Simiński Strona : 7
8 Od programowanie proceduralnego do obiektowego Podejście obiektowe na prostym przykładzie Realizacja proceduralna wady techniczne Brak jawnego powiązania pomiędzy x, y i code A przecież te zmienne opisują jeden obiekt Brak jawnego powiązania pomiędzy fragmentem wyświetlającym (ukrywającym) punkt Czy rzeczywiście funkcja writecharxy dostała prawidłowe parametry? Siermiężne testowanie poprawności współrzędnych Realizacja proceduralna wady metodyczne Z kodu programu nie wynika bezpośrednio, jakie jest jego przeznaczenie, brak powiązań pomiędzy akcjami a danymi Sam algorytm jest prosty, lecz jego zapis nie wspomaga zrozumienia, jaka jest istota problemu Copyright Roman Simiński Strona : 8
9 Od programowanie proceduralnego do obiektowego Podejdźmy do problemu inaczej spróbujmy zrozumieć jego istotę Zapraszamy na: Krótki wywiad z głównym bohaterem programu! Copyright Roman Simiński Strona : 9
10 Wtorek 16 maja 2006 Redaktor Prowadzący Roman Simiński Bohaterem dzisiejszego wywiadu jest ruchomy punkt ekranowy Dzięki temu wyjątkowemu wywiadowi poznamy unikatowe fakty z życia przedstawicieli tego gatunku Fakty IT gazeta c o d z i e n n a Niecodzienny dodatek Gazety Codziennej Tylko u nas, ekskluzywny wywiad z głównym bohaterem Programu Jak się nazywasz? No, wiesz, na imię mam nieciekawie jestem R, po prostu R Kim jesteś? Jestem ruchomym punktem ekranowym Ponieważ zasuwam po całym ekranie, można o mnie powiedzieć z angielska, że jestem jednym z Runner ów Czyli może Was być więcej? Takich jak ja może być więcej W tym programie potrzeba tylko jednego Runnera, więc oto jestem Powiedz nam coś o sobie Co tu dużo gadać Jak trzeba to mnie widać, jak nie trzeba to znikam Potrafię się przesunąć o jedno pole w górę, w dół, w lewo lub w prawo Nie wylecę poza ekran to pewne dbam o to Możesz mi podać pozycję ekranową oraz znak, jakim mam być
11 Wtorek, 16 maja 2006 Jak to możesz mi podać? Tajemnice życia Runnerów ujawnione prawie wszystkie intymne szczegóły, tylko w dodatku Fakty IT gazeta c o d z i e n n a Co jak to zwyczajnie Przecież wiesz jak mam na imię, to mnie zawołaj, ustal gdzie mam być na ekranie i jak mam wyglądać W ogóle to możesz mną sterować, zawołaj mnie i prześlij mi polecenie Jak niby mam Ci przesyłać polecenia? Jaki ty jesteś no, niedoinformowany Przecież już Ci mówiłem, co potrafię Dokładnie polecenia nazywają się: show, hide, moveup, movedown, moveleft, moverigt Dodatkowo mam swoją wewnętrzną pamięć i trzymam tam wszystko, co powinienem wiedzieć Pozycję przechowuję w komórkach o nazwie x i y a znak, jakim mam być w szufladce code Chcesz, to mi coś tam wstaw Co łaska, byle by to było legalne Wiesz, my gwiazdy programów musimy uważać A skąd Ty to wszystko wiesz i potrafisz? Nauczył mnie tego programista Wymyślił, że będą Runner y, określił, co każdy Runner powinien wiedzieć, co powinien robić A potem nauczył nas, Runner ów jak to wszystko mamy robić Ja jestem Runnerem, to umiem to wszystko Każdy Runner umie to wszystko No, przydałoby się, żeby nauczyła nas jeszcze kilku rzeczy, no wiesz ale nie nauczył :( Strona 2 Wywiady
12 Wtorek, 16 maja 2006 Tajemnice życia Runnerów ujawnione prawie wszystkie intymne szczegóły, tylko w dodatku Fakty IT gazeta c o d z i e n n a A skoro już tu jesteś mogę trochę Ciebie poużywać? Taaak, wy to, jak zwykle, zawsze o jednym A dobra masz mieć, nie jestem mydełko, nie wymydlę się Ale ostrożnie, najpierw Ci wszystko wyjaśnię Jeżeli chcesz, żebym wiedział, że mam się pojawić np w 40-stej kolumnie 12-go wiersza, to piszesz w swoim programie: Rx = 40; Ry = 12; Zauważ, że piszesz najpierw moje imię, potem po kropce nazwę miejsca, gdzie przechowuję dane To miejsce nazywam polem Możesz do tego pola przypisać wartość To tak, jakbyś mi wkładał tą wartość do kieszeni Jeżeli chcesz, żebym pokazał się na ekranie piszesz: Rshow(); I znowu, piszesz moje imię, potem po kropce nazwę polecenia, jakie mam wykonać To tak jakbyś do mnie wysyłał komunikat To wygląda jak wywołanie funkcji w języku C, i rzeczywiście, na Twój komunikat odpowiadam wywołaniem funkcji, którą mam w siebie wbudowaną Taka funkcja nazywa się funkcją składową Strona 3 Wywiady
13 Wtorek, 16 maja 2006 Tajemnice życia Runnerów ujawnione prawie wszystkie intymne szczegóły, tylko w dodatku Fakty IT gazeta c o d z i e n n a Jeżeli mam się przesunąć o jedno pole do góry, potem o jedno w lewo i jeszcze raz o jedno do góry, to piszesz: RmoveUp(); RmoveLeft(); RmoveUp(); Jeżeli chcesz, żebym przeszedł po kwadracie: pięć kroków w prawo, pięć w dół, pięć w lewo i pięć w górę, to napiszesz np: int steps; Rx = 1; // Powiedz mi, ską d mam wystartować Ry = 1; Rshow(); for( steps = 5; steps > 0 ; steps-- ) RmoveRight(); // Id ę w prawo for( steps = 5; steps > 0 ; steps-- ) RmoveDown(); // Id ę w dół for( steps = 5; steps > 0 ; steps-- ) RmoveLeft(); // Id ę w lewo for( steps = 5; steps > 0 ; steps-- ) RmoveUp(); // Id ę w gór ę Strona 4 Wywiady
14 Wtorek, 16 maja 2006 Tajemnice życia Runnerów ujawnione prawie wszystkie intymne szczegóły, tylko w dodatku Fakty IT gazeta c o d z i e n n a Czy możesz naszym czytelnikom wyjaśnić jak są zbudowane funkcje składowe, np show, hide? Mogę, ale mi się nie chce Zapytaj o to programistę Ja jestem od zasuwania na ekranie a nie od programowania Szkoda, ale i tak serdecznie dziękujemy za rozmowę Strona 5 Wywiady
15 Podejście obiektowe na prostym przykładzie Realizacja obiektowa najprostsza wersja Runner R; Rx = 40; // Ustal pozycj ę i wygląd Runnera Ry = 12; Rcode = '*'; clearscreen(); Rshow(); do switch( key = getkey() ) case KEY_UP : RmoveUp(); break; case KEY_DOWN : RmoveDown(); break; case KEY_LEFT : RmoveLeft(); break; case KEY_RIGHT : RmoveRight(); break; } } while( key!= KEY_ESC ); Copyright Roman Simiński Strona : 15
16 Podejście obiektowe na prostym przykładzie Anatomia Runnera pola Runner to nazwa klasy obiektów Wszystkie obiekty klasy Runner będą posiadały te same cechy i umiejętności To, co obiekt wie o sobie i swoim otoczeniu pamiętane jest w jego polach Polami w klasie Runner są x i y opisujące ekranową pozycję obiektu, oraz code opisujące wygląd obiektu class Runner public : int x, y, code; Wszystkie elementy zadeklarowane w sekcji public są dostępne dla tych, którzy chcą używać obiektu klasy Runner void show(); void hide(); }; void moveup(); void movedown(); void moveleft(); void moveright(); Copyright Roman Simiński Strona : 16
17 Podejście obiektowe na prostym przykładzie Anatomia Runnera funkcje składowe Do obiektów można wysyłać komunikaty Ich nazwy to odpowiednio: moveup, movedown, moveleft, moveright, show, hide switch( key = getkey() ) case KEY_UP } : RmoveUp(); break; case KEY_DOWN : RmoveDown(); break; case KEY_LEFT : RmoveLeft(); break; case KEY_RIGHT : RmoveRight(); break; Copyright Roman Simiński Strona : 17
18 Podejście obiektowe na prostym przykładzie Anatomia Runnera funkcje składowe Obiekt odpowiada na komunikaty wywołując metody Metody są implementowane poprzez funkcje składowe, których prototypy są zadeklarowane w definicji klasy: class Runner public : int x, y, code; void show(); void hide(); }; void moveup(); void movedown(); void moveleft(); void moveright(); Copyright Roman Simiński Strona : 18
19 Podejście obiektowe na prostym przykładzie Anatomia Runnera funkcje składowe Właściwe definicje (zawierające konkretny kod) umieszczone są zwykle (choć niekoniecznie) poniżej definicji klasy Runner Nazwa każdej metody jest kwalifikowana nazwą klasy void Runner::show() writecharxy( x, y, code ); } void Runner::hide() writecharxy( x, y, ' ' ); } Copyright Roman Simiński Strona : 19
20 Podejście obiektowe na prostym przykładzie Anatomia Runnera funkcje składowe void Runner::moveUp() hide(); if( y > 1 ) --y; show(); } void Runner::moveDown() hide(); if( y < 24 ) ++y; show(); } void Runner::moveLeft() hide(); if( x > 1 ) --x; show(); } void Runner::moveRight() hide(); if( x < 80 ) ++x; show(); } Wewnątrz każdej funkcji składowej, dostępne są wszystkie pola obiektu i inne funkcje składowe Copyright Roman Simiński Strona : 20
21 Pojęcie obiektu Istnieje wiele, różniących się od siebie definicji pojęcia obiekt Tutaj przyjmiemy następującą definicję: Obiekt jest abstrakcją pewnego konkretnego bytu ze świata rzeczywistego, reprezentujący rzecz (obiekt fizyczny), pojęcie (obiekt konceptualny) lub pewny byt programistyczny nie mający swojego odpowiednika w rzeczywistości Pojęcie klasy Istnieje wiele, różniących się od siebie definicji pojęcia klasa Tutaj przyjmiemy następującą definicję: Klasa określa właściwości i możliwości każdego obiektu do niej należącego, definiuje zatem to, jak obiekt jest zbudowany i co potrafi W szczególności klasa zawiera specyfikację danych i metod, informację o typie i reprezentacji pól, implementację metod, informacje dotyczące relacji i powiązań z innymi klasami Copyright Roman Simiński Strona : 21
22 Trzy podstawowe cechy obiektu Tożsamość (ang identity) Stan (ang state) Działanie, zachowanie (ang behavior) Copyright Roman Simiński Strona : 22
23 Tożsamość Tożsamość (ang identity), pozwala na odróżnienie danego obiektu od każdego innego Programista przypisuje obiektowi unikatową nazwę lub włącza go do identyfikowalnej kolekcji obiektów, lub odwołuje się do obiektu posługując się jego adresem w pamięci Copyright Roman Simiński Strona : 23
24 Stan Stan (ang state), opisuje to co obiekt w danym momencie powinien wiedzieć aby sprawnie działać Stan obiektu w danym momencie opisany jest zestawem atrybutów i ich wartości Atrybuty są nazwami wewnętrznych danych obiektu, opisujących jego stan Atrybuty zwane są polami (ang fields) lub składowymi danych Wartości atrybutów mogą się zmieniać w czasie wykonania programu Copyright Roman Simiński Strona : 24
25 Zdolność do działania Zdolność do działania (ang behavior) opisuje operacje, które obiekt może wykonać Operacje są realizowane poprzez wykonanie metod (ang methods) zwanych w C++ funkcjami składowymi (ang member functions) Metody są jak procedury lub funkcje w programowaniu proceduralnym mogą otrzymywać parametry, mogą zwracać wartości Metody są jednak częścią obiektu i mogą być aktywowane wtedy, gdy obiekt zostanie o to poproszony Wykonanie metod zwykle zmienia stan obiektu a więc wartości jego pól Copyright Roman Simiński Strona : 25
26 Najważniejsze cechy podejścia obiektowego Abstrakcja (ang abstraction) Hermetyzacja (ang encapsulation) Dziedziczenie (ang inheritance) Polimorfizm (ang polymorphism) Copyright Roman Simiński Strona : 26
27 Abstrakcja Podejście obiektowe eksponuje rolę obiektu jest on abstrakcją pewnego konkretnego bytu ze świata rzeczywistego, reprezentującego rzecz (obiekt fizyczny) lub pojęcie (obiekt konceptualny) Abstrakcja pozwala postrzegać modelowaną rzeczywistość bez wnikania w jej wewnętrzną strukturę Elementy, które w danym momencie są nieistotne mogą zostać ukryte lub nawet pominięte Obiekty rzeczywiste Abstrakcyjny model analityczny Copyright Roman Simiński Strona : 27
28 Abstrakcja, cd Cechy Akcje Marka Model Rok produkcji Nr rejestracyjny Kolor nadwozia Nr silnika Podaj średnie spalanie Podaj przebieg Reprezentacja obiektowa Obiekty rzeczywiste Abstrakcyjny model analityczny Copyright Roman Simiński Strona : 28
29 Abstrakcja, cd Obiekt jest jest dostawcą pewnych informacji oraz usług Nie musimy wiedzieć jak obiekt coś robi ale co robi Nie musimy wiedzieć jak obiekt coś przechowuje ale co przechowuje class Runner public : void show(); void hide(); }; void moveup(); void movedown(); void moveleft(); void moveright(); Copyright Roman Simiński Strona : 29
30 Hermetyzacja Hermetyzacja pozwala obiektom kontrolować poprawność swojej reprezentacji zewnętrznej Osiąga się to poprzez ukrycie (ang information hiding) pól obiektu przed użytkownikiem zewnętrznym Zastosowanie hermetyzacji wymusza udostępnianie użytkownikowi publicznego interfejsu składającego się metod, które mają publiczny modyfikator widoczności Ukryte części obiektu są niedostępne na zewnątrz i mogą być tylko wykorzystane przez metody dostępowe Składowe publiczne Składowe prywatne BigArray additem getitem finditem sort Ukryta reprezentacja fizyczna Copyright Roman Simiński Strona : 30
31 Hermetyzacja,cd Klasa powinna ukrywać przed jej użytkownikiem szczegóły implementacyjne Zmiana implementacji powinna być dla użytkownika klasy przeźroczysta Zasada hermetyzacji postuluje ukrywanie nie tylko szczegółów realizacyjnych, ale również pól i sposobów ich reprezentacji Szczegóły widoczne Szczegóły ukryte Runner R; Rx = 40; Ry = 12; Rcode = '*'; cout << "X:" << Rx << endl; cout << "Y:" << Ry << endl; cout << "Kod:" << Rcode << endl; Runner R; RsetX( 40 ); RsetY( 12 ); RsetCode( '*' ); cout << "X:" << RgetX() << endl; cout << "Y:" << RgetY() << endl; cout << "Kod:" << RgetCode() << endl; Copyright Roman Simiński Strona : 31
32 Hermetyzacja, cd class Runner public : int x, y, code; }; void show(); void hide(); void moveup(); void movedown(); void moveleft(); void moveright(); class Runner public : void setx( int newx ); void sety( int newy ); void setcode( int newcode ); int getx(); int gety(); int getcode(); void show(); void hide(); void moveup(); void movedown(); void moveleft(); void moveright(); private: int x, y, code; }; Copyright Roman Simiński Strona : 32
33 Hermetyzacja, cd Hermetyzacja pól pozwala na kontrolowanie poprawności danych przekazywanych obiektowi Runner R; Rx = -400; Ry = 1200; Błędna pozycja ekranowa, bezpośredni dostęp do pól obiektu Rcode = '*'; Rshow();? Copyright Roman Simiński Strona : 33
34 Hermetyzacja, cd Runner R; RsetX( -400 ); RsetY( 1200 ); Błędna pozycja ekranowa, dostęp do pól obiektu za pośrednictwem metod RsetCode( '*' ); Rshow(); void Runner::setX( int newx ) if( isxonscreen( newx ) ) x = newx; else x = 1; // Wartość domyślna } void Runner::setY( int newy ) if( isyonscreen( newy ) ) y = newy; else y = 1; // Wartość domyślna } Copyright Roman Simiński Strona : 34
35 Na zakończenie Osobny wykład Dziedziczenie (ang inheritance) Polimorfizm (ang polymorphism) Osobny wykład Copyright Roman Simiński Strona : 35
Programowanie obiektowe w języku C++
Programowanie obiektowe w języku C++ Roman Simiński romansiminski@usedupl wwwsiminskionlinepl Koncepcja programowania obiektowego Programowanie obiektowe trochę historii Programowanie obiektowe nie jest
Bardziej szczegółowoPodstawy 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ółowoInformacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Bardziej szczegółowoPodstawy programowania w języku C i C++
Podstawy programowania w języku C i C++ Część czwarta Operatory i wyrażenia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót
Bardziej szczegółowoTEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Bardziej szczegółowoTechniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Bardziej szczegółowoWprowadzenie do programowanie obiektowego w języku C++
Wprowadzenie do programowanie obiektowego w języku C++ Część czwarta Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoLaboratorium 1 - Programowanie proceduralne i obiektowe
Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?
Bardziej szczegółowoTechnologie 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ółowoProgramowanie w języku C++
Programowanie w języku C++ Część siódma Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi
Bardziej szczegółowoDariusz 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ółowoclass Student Deklaracja klasy Osoba: Deklaracja klasy Student:
Osoba Student Będziemy mieli 2 klasy: Osoba, dla której zapamiętamy dane takie jak: imie, nazwisko i wiek Oraz klasę Student, w której będziemy też dodatkowo pamiętać kierunek studiów. Deklaracja klasy
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoTechnologie 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ółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziewiąta Tablice a zmienne wskaźnikowe Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoProgramowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r. Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to
Bardziej szczegółowoSzablony 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ółowoProgramowanie 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ółowoProgramowanie obiektowe, wykład nr 6. Klasy i obiekty
Dr hab. inż. Lucyna Leniowska, prof. UR, Zakład Mechatroniki, Automatyki i Optoelektroniki, IT Programowanie obiektowe, wykład nr 6 Klasy i obiekty W programowaniu strukturalnym rozwój oprogramowania oparto
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część ósma Zmienne wskaźnikowe koncepcja, podstawowe zastosowania Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski
Bardziej szczegółowoWprowadzenie do programowanie obiektowego w języku C++
Wprowadzenie do programowanie obiektowego w języku C++ Część trzecia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoDo czego służą klasy?
KLASY Dorota Pylak 2 Do czego służą klasy? W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można wykonywać
Bardziej szczegółowoW2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy :
Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : class nazwa_klasy prywatne dane i funkcje public: publiczne dane i funkcje lista_obiektów;
Bardziej szczegółowoWstęp do programowania obiektowego. Wykład 2
Wstęp do programowania obiektowego Wykład 2 1 CECHY I KONCEPCJA PROGRAMOWANIA OBIEKTOWEGO 2 Cechy programowania obiektowego Dla wielu problemów podejście obiektowe jest zgodne z rzeczywistością (łatwe
Bardziej szczegółowoProblem Próby rozwiązania Maszyna stanów Inne zastosowania Podsumowanie. Maszyny stanów. Programowanie gier bez Unity, cz. 3.
Maszyny stanów Programowanie gier bez Unity, cz. 3 Piotr Korgul Koło Naukowe Twórców Gier Polygon 3 grudnia 2014 r. Cykl Programowanie gier bez Unity 1 Jak zorganizować prace nad grą? 2 Jak działa gra?
Bardziej szczegółowoProjektowanie obiektowe. Roman Simiński Wzorce projektowe Wybrane wzorce strukturalne
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Wzorce projektowe Wybrane wzorce strukturalne Fasada Facade Pattern 2 Wzorzec Fasada Facade Pattern koncepcja 3 Wzorzec
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoProgramowanie w języku C++
Programowanie w języku C++ Część dziewiąta Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi
Bardziej szczegółowoJava. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak
Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego
Bardziej szczegółowoProgramowanie obiektowe w języku C++
Programowanie obiektowe w języku C++ Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Klasy i obiekty pierwsze kroki Problem Przewidywane jest napisanie obiektowej wersji programu, realizującego
Bardziej szczegółowoWprowadzenie do obiektowości
Wprowadzenie do obiektowości Obiekt jest abstrakcją pewnego konkretnego bytu ze świata rzeczywistego, reprezentujący rzecz (obiekt fizyczny), pojęcie (obiekt konceptualny) lub pewny byt programistyczny
Bardziej szczegółowoDiagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com
Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,
Bardziej szczegółowoObiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.
Zrozumienie funkcji danych statycznych jest podstawą programowania obiektowego. W niniejszym artykule opiszę zasadę tworzenia klas statycznych w C#. Oprócz tego dowiesz się czym są statyczne pola i metody
Bardziej szczegółowoMetodyki programowania. Roman Simiński programowanie.siminskionline.pl. Wprowadzenie do podejścia zwinnego
Metodyki programowania Roman Simiński roman.siminski@us.edu.pl programowanie.siminskionline.pl Wprowadzenie do podejścia zwinnego Trochę wprowadzenia... Kaskadowy model procesu wytwarzania oprogramowania
Bardziej szczegółowoMechanizm dziedziczenia
Mechanizm dziedziczenia Programowanie obiektowe jako realizacja koncepcji ponownego wykorzystania kodu Jak przebiega proces dziedziczenia? Weryfikacja formalna poprawności dziedziczenia Realizacja dziedziczenia
Bardziej szczegółowoMETODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Bardziej szczegółowoWykład 5: Klasy cz. 3
Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu
Bardziej szczegółowoLaboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:
Zakres laboratorium: definiowanie struktur terminologia obiektowa definiowanie klas funkcje składowe klas programy złożone z wielu plików zadania laboratoryjne Laboratorium nr 12 Temat: Struktury, klasy.
Bardziej szczegółowoKLASY cz.1. Dorota Pylak
KLASY cz.1 Dorota Pylak Do czego służą klasy? 2 W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można
Bardziej szczegółowoMateriały do zajęć VII
Spis treści I. Klasy Materiały do zajęć VII II. III. Konstruktor Właściwości i indeksatory Klasy Programowanie obiektowe wiadomości wstępne Paradygmat programowania obiektowego Abstrakcja Hermetyzacja
Bardziej szczegółowo2.4 Dziedziczenie. 2.4 Dziedziczenie Przykłady programowania w C - kurs podstawowy
2.4 Dziedziczenie Poprzednie dwa rozdziały które dotyczyły zagadnienia automatów komórkowych na przykładach programów w C++. Mogłyby one sugerować że niekoniecznie trzeba programować obiektowo aby napisać
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część ósma Tablice znaków i przetwarzanie napisów Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoProgramowanie 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ółowoWstęp do Programowania 2
Wstęp do Programowania 2 dr Bożena Woźna-Szcześniak bwozna@gmail.com Akademia im. Jana Długosza Wykład 5 W programowaniu obiektowym programista koncentruje się na obiektach. Zadaje sobie pytania typu:
Bardziej szczegółowoKLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoMechanizm dziedziczenia
Mechanizm dziedziczenia Programowanie obiektowe jako realizacja koncepcji ponownego wykorzystania kodu Jak przebiega proces dziedziczenia? Weryfikacja formalna poprawności dziedziczenia Realizacja dziedziczenia
Bardziej szczegółowoJęzyk programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/
Język programowania Andrzej Bobyk http://www.alfabeta.lublin.pl www.alfabeta.lublin.pl/jp/ Literatura K. Reisdorph: Delphi 6 dla każdego. Helion, Gliwice 2001 A. Grażyński, Z. Zarzycki: Delphi 7 dla każdego.
Bardziej szczegółowoDo czego służą klasy?
KLASY Dorota Pylak 2 Do czego służą klasy? W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można wykonywać
Bardziej szczegółowoRóżne właściwości. Różne właściwości. Różne właściwości. C++ - klasy. C++ - klasy C++ - KLASY
Różne właściwości Funkcje tak samo jak zmienne mają swoje miejsce w pamięci, gdzie są zapisane. Można więc uzyskać ich adres. Podobnie jak adres tablicy jest zwracany przez jej nazwę, podaną bez nawiasu
Bardziej szczegółowoKlasy i obiekty. Programowanie zorientowane obiektowo. Case study: Filmoteka Case study: Klasa Akademik
Klasy i obiekty. Programowanie zorientowane obiektowo. Case study: Filmoteka Case study: Klasa Akademik Dlaczego obiekty Załóżmy, że mamy napisać program o następującej specyfikacji: 1. Program wyświetla
Bardziej szczegółowoDariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki zaprojektowany jako rozszerzenie języka C o obiektowe mechanizmy abstrakcji danych jest to język pozwalający na programowanie zarówno proceduralne
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoKlasy abstrakcyjne, interfejsy i polimorfizm
Programowanie obiektowe 12 kwietnia 2011 Organizacyjne Klasówka będzie 20 IV 2011. Sale jeszcze są pertraktowane. Materiał do wyjątków włącznie. Można mieć swoje materiały nieelektroniczne. Wywołanie z
Bardziej szczegółowoRozdział 4 KLASY, OBIEKTY, METODY
Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej
Bardziej szczegółowoZaawansowane programowanie w języku C++ Klasy w C++
Zaawansowane programowanie w języku C++ Klasy w C++ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
Bardziej szczegółowoDefiniowanie własnych klas
Programowanie obiektowe Definiowanie własnych klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Definiowanie własnych klas Autor:
Bardziej szczegółowoĆwiczenia podstawowe, zestaw 5, część 1
Ćwiczenia podstawowe, zestaw 5, część 1 1 Napisz zestaw funkcji identyfikujących rodzaj znaku Należy napisać funkcje, pozwalające na identyfikowanie typu znaku przekazanego parametrem. Załóżmy, że tworzymy
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część trzynasta Tablice struktur, pliki struktur Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
Bardziej szczegółowoKLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Bardziej szczegółowoJava - tablice, konstruktory, dziedziczenie i hermetyzacja
Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja
Bardziej szczegółowo1 Definiowanie prostych klas
Ćwiczenie 1 1 Definiowanie prostych klas Ćwiczenie to poświęcone jest poznaniu podstawowych zagadnień związanych z definiowaniem prostych klas. Obejmuje m.in. ćwiczenia pozwalające opanować definiowanie
Bardziej szczegółowoDeklaracja struktury w C++
Struktury to złożone typy danych pozwalające przechowywać różne informacje. Za pomocą struktur możliwe jest grupowanie wielu zmiennych o różnych typach w jeden obiekt. Strukturę można nazywać obiektem
Bardziej szczegółowoWykład 9 2014-06-20 09:37 PP2_W9
Wykład 9 Przykłady programów z wykorzystaniem klas - przykład funkcji operatorowych - obiektowa implementacja listy jednokierunkowej kopiowanie obiektów - klasa "latający napis" Pozycjonowanie w plikach
Bardziej szczegółowoAnaliza 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ółowoProgramowanie 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ółowoListy powiązane zorientowane obiektowo
Listy powiązane zorientowane obiektowo Aby zilustrować potęgę polimorfizmu, przeanalizujmy zorientowaną obiektowo listę powiązaną. Jak zapewne wiesz, lista powiązana jest strukturą danych, zaprojektowaną
Bardziej szczegółowoKlasa jest nowym typem danych zdefiniowanym przez użytkownika. Najprostsza klasa jest po prostu strukturą, np
Klasy Klasa jest nowym typem danych zdefiniowanym przez użytkownika Wartości takiego typu nazywamy obiektami Najprostsza klasa jest po prostu strukturą, np struct Zespolona { Klasy jako struktury z operacjami
Bardziej szczegółowoProgramowanie II. Lista 3. Modyfikatory dostępu plik TKLientBanku.h
Programowanie II Lista 3 Modyfikatory dostępu plik TKLientBanku.h plik z funkcją main Przyjaźń Dziedziczenie Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące. Jest to
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoFunkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów
Funkcje. Spotkanie 5 Dr inż. Dariusz JĘDRZEJCZYK Tworzenie i używanie funkcji Przekazywanie argumentów do funkcji Domyślne wartości argumentów Przeładowanie nazw funkcji Dzielenie programu na kilka plików
Bardziej szczegółowoPaweł 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ółowoKażdy z nich posiada swoje parametry. W przypadku silnika może to być moc lub pojemność, w przypadku skrzyni biegów można mówić o skrzyni
Język obiektowy był krokiem ewolucji w programowaniu komputerów. Powstał w wyniku rozwoju języków strukturalnych i zmiany podejścia do problemów informatycznych. Cały otaczający świat składa się z obiektów.
Bardziej szczegółowoZARZĄ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ółowoModelowanie 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ółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoPodstawy 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ółowoPętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady
Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoJęzyki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD
Języki C i C++ Wykład: 2 Wstęp Instrukcje sterujące 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe
Bardziej szczegółowoWstęp do programowania obiektowego. WYKŁAD 3 Dziedziczenie Pola i funkcje statyczne Funkcje zaprzyjaźnione, this
Wstęp do programowania obiektowego WYKŁAD 3 Dziedziczenie Pola i funkcje statyczne Funkcje zaprzyjaźnione, this 1 Nazwa typu Rozmiar Zakres Uwagi bool 1 bit wartości true albo false stdbool.h TYPY ZNAKOWE
Bardziej szczegółowoPodstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 5 Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania w C++ Instrukcje sterujące 2 dr Artur Bartoszewski
Bardziej szczegółowoModelowanie 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ółowoProjektowanie obiektowe
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl programowanie.siminskionline.pl Obiektowość w systemach informatycznych Dlaczego projektowanie jest ważne Fakt 1: Wzrost złożoności oprogramowania
Bardziej szczegółowoĆwiczenie 7 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz
Ćwiczenie 7 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania Zofia Kruczkiewicz Zakres Funkcje przetwarzające teksty (biblioteka ) - tworzenie własnych
Bardziej szczegółowoProgramowanie, część I
11 marca 2010 Kontakt Wstęp Informacje organizacyjne Materiał na ćwiczenia Plan wykładu http://www.fuw.edu.pl/~rwys/prog rwys@fuw.edu.pl tel. 22 55 32 263 Materiał na ćwiczenia Informacje organizacyjne
Bardziej szczegółowoInformatyka II. Laboratorium Aplikacja okienkowa
Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.
Bardziej szczegółowoC++ - dziedziczenie. C++ - dziedziczenie. C++ - dziedziczenie. C++ - dziedziczenie. C++ - dziedziczenie C++ - DZIEDZICZENIE.
C++ - DZIEDZICZENIE Do najważniejszych cech języka C++ należy możliwość wielokrotnego wykorzystywania kodu Prymitywnym, ale skutecznym sposobem jest kompozycja: deklarowanie obiektów wewnątrz innych klas,
Bardziej szczegółowoProjektowanie obiektowe. Roman Simiński Polimorfizm
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Polimorfizm Koncepcja polimorfizmu Słowo polimorfizm pochodzi od dwóch greckich słów: poly czyli wiele, morphos czyli
Bardziej szczegółowoPodstawy Programowania Programowanie Obiektowe
Podstawy Programowania Programowanie Obiektowe Michał Bujacz bujaczm@p.lodz.pl B9 Lodex 207 godziny przyjęć: środy i czwartki 10:00-11:00 http://www.eletel.p.lodz.pl/bujacz/ 1 Pytania powtarzające x &
Bardziej szczegółowoWarunek wielokrotnego wyboru switch... case
Warunek wielokrotnego wyboru switch... case Działanie instrukcji switch jest zupełnie inne niż w przypadku instrukcji if o czym będziesz mógł się przekonać w niniejszym rozdziale. Różnice pomiędzy instrukcjami
Bardziej szczegółowoWprowadzenie do obiektowości
Wprowadzenie do obiektowości Obiekt jest abstrakcją pewnego konkretnego bytu ze świata rzeczywistego, reprezentujący rzecz (obiekt fizyczny), pojęcie (obiekt konceptualny) lub pewny byt programistyczny
Bardziej szczegółowoInterfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej
Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,
Bardziej szczegółowoPodstawy Języka Java
Podstawy Języka Java Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania, w którym programy definiuje się za pomocą obiektów elementów łączących
Bardziej szczegółowoXII. Warunek wielokrotnego wyboru switch... case
XII. Warunek wielokrotnego wyboru switch... case 12.1. Gdy mamy więcej niŝ dwie moŝliwości Do tej pory poznaliśmy warunek if... else... Po co nam kolejny? Trudno powiedzieć, ale na pewno nie po to, Ŝeby
Bardziej szczegółowoProgramowanie 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ółowoTypy klasowe (klasy) 1. Programowanie obiektowe. 2. Założenia paradygmatu obiektowego:
Typy klasowe (klasy) 1. Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która definiuje programy za pomocą obiektów
Bardziej szczegółowokodowanienaekranie.pl
Temat: Naucz się tekstowego języka Python z Codey Rocky - część 1 Zdarzenia kl7-8 Szkoła Podstawowa Przedmiot: informatyka Autor: Sylwester Zasoński Czas trwania: 1h lekcyjna Cele ogólne: Rozwijanie kompetencji
Bardziej szczegółowo