Uniwersytet Mikołaja Kopernika w Toruniu - Centralny punkt logowania
Strona główna

Programowanie obiektowe

Informacje ogólne

Kod przedmiotu: 0800-AR2PROB
Kod Erasmus / ISCED: (brak danych) / (0613) Tworzenie i analiza oprogramowania i aplikacji Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Programowanie obiektowe
Jednostka: Wydział Fizyki, Astronomii i Informatyki Stosowanej
Grupy:
Punkty ECTS i inne: 3.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Wymagania wstępne:

Podstawy programowania w języku C.

Rodzaj przedmiotu:

przedmiot obowiązkowy

Całkowity nakład pracy studenta:

Godziny realizowane z udziałem nauczycieli (45 godz.):

- udział w wykładach – 15 godz.

- udział w laboratorium – 30 godz.


Czas poświęcony na pracę indywidualną studenta (45 godz.):

- przygotowanie do laboratorium – 15 godz.

- pisanie prac, projektów – 15 godz.

- przygotowanie do kolokwium – 15 godz.


Łącznie: 90 godz. (3 punkty ECTS)

Efekty uczenia się - wiedza:

W01: posiada wiedzę w zakresie tworzenia i analizy algorytmów, analizy ich złożoności obliczeniowej, zapisu algorytmów w języku C++.

W02: posiada wiedzę na temat projektowania i programowania obiektowego z użyciem narzędzi dostępnych w języku C++.

W03: ma podstawową wiedzę o cyklach życia systemów projektowanych i implementowanych obiektowo; posiada wiedzę w zakresie obiektowych konstrukcji systemów, posiada wiedzę o przydatnych narzędziach, bibliotekach programowania obiektowego i sposobach ich wykorzystania do budowania systemów.

W04: zna metody i techniki rozwiązywania zadań inżynierskich poprzez odpowiednie projektowanie obiektowych modeli.

W05: zna możliwości narzędzi programistycznych w zakresie tworzenia obiektowo-zorientowanych rozwiązań.


Efekty przedmiotowe W01-W05 realizują efekty kierunkowe K_W03, K_W05.

Efekty uczenia się - umiejętności:

U01: ma umiejętność formułowania algorytmów i ich programowania z użyciem wybranych narzędzi programistycznych oraz potrafi ocenić złożoność obliczeniową algorytmów i problemów informatycznych

U02: potrafi stworzyć model obiektowy prostego systemu informatycznego; potrafi zastosować metody analizy problemu, wyodrębniania niezależnych modułów, uogólniania zagadnień dla tworzenia rozwiązań problemów w postaci obiektowo zorientowanych modeli

U03: potrafi dokonać identyfikacji i sformułować specyfikację prostych zadań informatyczno-inżynierskich; potrafi wykorzystywać właściwe narzędzia programistyczne w celu obsługi obiektowo zorientowanych projektów

U04: potrafi ocenić, na podstawowym poziomie, przydatność rutynowych metod i narzędzi informatycznych oraz wybrać i zastosować właściwą metodę i narzędzia do typowych zadań informatycznych

U05: umie planować i przeprowadzać zaawansowane eksperymenty lub obserwacje zbudowanych modeli informatycznych dla różnego rodzaju zadań,


Efekty przedmiotowe U01-U05 realizują efekty kierunkowe K_U03, K_U05, K_U10,

Efekty uczenia się - kompetencje społeczne:

K01: jest świadomy odpowiedzialności za zadania programistyczno-inżynierskie realizowane w zespole i potrafi przyjąć funkcję lidera

Efekt przedmiotowy K01 realizuje efekty kierunkowe K_K02, K_K03

Metody dydaktyczne:

Wykład ilustrowany jest licznymi przykładami. Materiały są udostępniane w formie elektronicznej.

Problemy projektowe i implementacyjne są dyskutowane i rozwiązywane na bieżąco w ramach laboratorium.


Metody dydaktyczne podające:

- wykład informacyjny (konwencjonalny)


Metody dydaktyczne poszukujące:

- klasyczna metoda problemowa

- laboratoryjna

- projektu

Metody dydaktyczne podające:

- wykład informacyjny (konwencjonalny)

Metody dydaktyczne poszukujące:

- klasyczna metoda problemowa
- laboratoryjna
- projektu

Skrócony opis:

Celem przedmiotu jest przedstawienie metodologii projektowania i programowania obiektowego, pewnych znanych technologii obiektowych oraz specyfiki języka C++.

Pełny opis:

Program zajęć:

1. Projektowanie obiektowe - kapsułkowanie, ochrona danych

2. Klasy i obiekty, ochrona danych przez modyfikatory dostępu

3. Tworzenie i destrukcja obiektów i tablic obiektów

4. Polimorfizm - przeciążanie operatorów

5. Dziedziczenie,

a. Klasy bazowe i pochodne, hierarchie klas

b. Dziedziczenie wielokrotne, dziedziczenie wirtualne

6. Abstrakcyjne typy danych

a. Metody wirtualne, klasy abstrakcyjne, wirtualne destruktory

b. Interfejsy a klasy abstrakcyjne

7. Wzorce (ang. templates) funkcji i klas

8. Obsługa wyjątków

9. Specyfika C++

a. l-wartości i r-wartości, efektywne przekazywanie argumentów itp.

b. Przestrzenie nazw

c. RTTI - runtime type identification

d. Standard Template Library (STL)

10. Rozszerzenia języka C++ w standardach C++11, C++14, C++17 i C++20

Laboratorium obejmuje zajęcia komputerowe umożliwiające praktyczne przećwiczenie zagadnień omawianych na wykładzie.

Literatura:

1. Bjarne Stroustrup "Język C++", WNT 2002.

2. Stanley B. Lippman, Josee Lajoie "Podstawy języka C++", WNT 2001.

3. Specyfikacja standardu języka C++ - "draft" – 2.12.1996.

4. http://www.stroustrup.com/C++11FAQ.html

5. https://en.cppreference.com/w/cpp/language

6. https://lhcb.github.io/developkit-lessons/first-development-steps/05-cpp.html

Metody i kryteria oceniania:

Metody oceniania:

kolokwium sprawdzające efekty przedmiotowe W01-W05,

projekty i praca bieżąca w ramach laboratorium sprawdzające umiejętności U01-U05.

Kryteria oceniania:

Wykład: zaliczenie bez oceny na podstawie kolokwium przeprowadzonego w ramach laboratorium

nznal < 50%

zal >= 50%

Laboratorium – zaliczenie na ocenę na podstawie wyników kolokwium (40%) oraz oceny przygotowanych projektów i pracy bieżącej (60%):

ndst- 50%

dst- 60%

dst plus- 65%

db- 70%

db plus- 75%

bdb- od 80%

Praktyki zawodowe:

nie dotyczy

Zajęcia w cyklu "Semestr letni 2021/22" (zakończony)

Okres: 2022-02-21 - 2022-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Krzysztof Grąbczewski
Prowadzący grup: Rafał Adamczak, Krzysztof Grąbczewski
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Wykład - Zaliczenie

Zajęcia w cyklu "Semestr letni 2022/23" (zakończony)

Okres: 2023-02-20 - 2023-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Krzysztof Grąbczewski
Prowadzący grup: Sebastian Meszyński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę

Zajęcia w cyklu "Semestr letni 2023/24" (w trakcie)

Okres: 2024-02-20 - 2024-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Krzysztof Grąbczewski
Prowadzący grup: Sebastian Meszyński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.
ul. Jurija Gagarina 11, 87-100 Toruń tel: +48 56 611-40-10 https://usosweb.umk.pl/ kontakt deklaracja dostępności USOSweb 7.0.2.0-1 (2024-03-12)