Agnieszka Rybarczyk Homepage
Programowanie Obiektowe
Laboratorium 1 (7.10.19) - Wprowadzenie.
Programowanie Obiektowe - wprowadzenie.
Laboratorium 2 (14.10.19) - Klasy.
Zadania do wykonania podczas laboratorium: Zadania 1. Zadania 2.
Teoria. Teoria - Co nowego w C++?, Teoria - skąd wzięły się klasy i obiekty w C++,
Teoria - przykład obiektu, Teoria - co to jest konstruktor
Teoria z przykładami.. Przykładowy kod.
Laboratorium 3 (21.10) - Przeciążanie operatorów.
Zadania do wykonania podczas laboratorium.
Teoria - Funkcje i przeciążanie., Teoria - Przeciążanie operatorów.
Teoria z przykładami.
Laboratorium 4 (28.10) - UML: Diagram Klas (Wykład o diagramach klas UML).
Przykładowe narzędzia do tworzenia diagramów UML: Visual UML, StarUML, WithClass 2000, Select Enterprise, Rational Rose Enterprise, GenMyModel etc.
Omówienie diagramu klas na bazie przykładów z zakresu C++. Przykładowe diagramy klas.
(Zaznaczenie, że klasa jest generyczna - po dodaniu klasy należy wybrać "Add Template Parameter").
Dziedziczenie.
Zadania do wykonania podczas laboratorium.
Teoria - O dziedziczeniu. Przykładowy kod.
Laboratorium 5 (4.11) - Polimorfizm.
Teoria z przykładami. Zadania do wykonania podczas laboratorium.
Teoria - O zastosowaniu dziedziczenia., Teoria - Funkcje wirtualne i klasy abstrakcyjne.
Przykładowy kod.
11.11 - brak zajęć.
Laboratorium 6 (18.11) - Obsługa wyjątków.
Zadania do wykonania podczas laboratorium.
Przykładowy kod.
Laboratorium 7 (25.11) - Szablony (wzorce) klas i funkcji.
Zadania do wykonania podczas laboratorium.
Teoria z przykładami: 1, 2, 3. Przykładowy kod.
Laboratorium 8 (2.12) - Oddanie projektu zaliczeniowego z C++. Oddanie programu w terminie późniejszym skutkuje obniżeniem oceny o 0.1 pkt za każdy dzień spóźnienia.
Laboratorium 9 (9.12) - Java - Podstawy.
Środowisko Eclipse. Wprowadzenie do Javy. Zadania do wykonania podczas laboratorium.
Laboratorium 10 (16.12) - Java - Klasy i Obiekty.
Zadania do wykonania podczas laboratorium.
23.12 - brak zajęć.
30.12 - brak zajęć.
6.01 - brak zajęć.
Laboratorium 11 (13.01) - Java - Polimorfizm, Klasy abstrakcyjne, interfejsy.
Zadania do wykonania podczas laboratorium.
Laboratorium 12 (20.01) - Java - Wyjątki, operacje wejścia-wyjścia.
Zadania do wykonania podczas laboratorium.
Laboratorium 13 (27.01) - Oddanie projektu zaliczeniowego z Javy. Oddanie programu w terminie późniejszym skutkuje obniżeniem oceny o 0.1 pkt za każdy dzień spóźnienia.
Tematy oraz wymagania dotyczące programu zaliczeniowego w C++.
Doxygen - instalacja, generowanie dokumentacji
Doxygen - Przykład
Tematy oraz wymagania dotyczące programu zaliczeniowego w Javie.
Literatura/materiały
- Bruce Eckel, "Thinking in Java". Free 3rd Electronic edition - link do darmowej wersji jednej z najpopularniejszych książek do nauki języka Java.
- Java™ Platform, Standard Edition 9 API Specification - specyfikacja pól i metod klas zawartych w bibliotekach JDK do Javy SE.
- The Java™ Tutorials - lista tutoriali dotyczących instalacji, wykorzystania i wdrażania rozwiązań w technologii Java.
- Konwencja nazewnicza w Javie
- Złożoność obliczeniowa kolekcji
- Swing tutorials - dawna strona firmy Sun z tutorialami do budowania interfejsu użytkownika z wykorzystaniem biblioteki Swing. Teraz to strona firmy Oracle, ale powinna spełniać tę samą funkcję.
- GUI Binding tutorial (Swing) - podstawowy tutorial dla osób chcących poznać mechanizm bindingu w Javie.
- Java FX - nowy flagowy system do tworzenia GUI w Javie.
- GUI Binding tutorial (Java FX) - binding w Java FX.
- Prosty przykład użycia i API semafora w Javie - semafor będzie przydatny do implementacji skrzyżowania.
- Wykład o diagramach klas UML - tłumaczy podstawy diagramów klas UML.
- The Reflection API - obszerny tutorial opisujący mechanizm refleksji w Javie
- Dodatkowe informacje dotyczące refleksji w Javie można znaleźć tutaj i tutaj
- Kurs C++, na którym wzorowane były zajęcia
- Kurs C++ ze strony Wikibooks