Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Programowanie komputerów

Sylabus przedmiotu Programowanie obiektowe:

Informacje podstawowe

Kierunek studiów Programowanie komputerów
Forma studiów studia niestacjonarne Poziom podyplomowe
Tytuł zawodowy absolwenta
Obszary studiów charakterystyki PRK
Profil
Moduł
Przedmiot Programowanie obiektowe
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Oprogramowania
Nauczyciel odpowiedzialny Piotr Błaszyński <Piotr.Blaszynski@zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 5,0 ECTS (formy) 5,0
Forma zaliczenia egzamin Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL2 20 3,00,60zaliczenie
wykładyW2 20 2,00,40egzamin

Wymagania wstępne

KODWymaganie wstępne
W-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w imperatywie proceduralnym, umie posługiwać się zintegrowanym środowiskiem programisty.
W-2Słuchacz zna podstawowe zasady konstruowania algorytmów.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Użycie istniejących klas w prostych programach.4
T-L-2Implementacja klas, tworzenie na ich podstawie obiektów, użycie tych obiektów. Dostęp do pól i metod klas w języku Python.4
T-L-3Implementacja metod specjalnych: konstruktor, reprezentacja i niszczenie obiektów. Wywoływanie metod specjalnych.3
T-L-4Budowa programu składającego się kilku współpracujących obiektów.2
T-L-5Umożliwienie rozbudowy i uproszczenia programu przez polimorfizm.2
T-L-6Projektowanie własnej struktury klas.5
20
wykłady
T-W-1Zagadnienia organizacyjne, omówienie istotnosci zagadnień, wprowadzenie.1
T-W-2Istniejące klasy i ich użycie w postaci obiektów, wywołanie metod.2
T-W-3Model obiektowy: klasa, obiekt, wzajemne relacje pomiędzy obiektami. Dostęp do pól i metod klas w języku Python.3
T-W-4Metody specjalne: konstrukcja, reprezentacja i niszczenie obiektów.1
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.2
T-W-6Testowanie aplikacji obiektowych.1
T-W-7Dziedziczenie i polimorfizm.1
T-W-8Zasady dobrego projektowania klas.4
T-W-9Zasady SOLID4
T-W-10Test końcowy.1
20

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Uczestnictwo w zajęciach.20
A-L-2Przygotowanie do zajęć.20
A-L-3Samodzielne rozwiązywania zadań i problemów postawionych na laboratoriach.36
76
wykłady
A-W-1Uczestniczenie w wykładach.20
A-W-2Samodzielna analiza materiałów przedstawionych na wykładzie i prooponowanej literatury. Powtarzanie i przyswajanie nabywanej wiedzy.16
A-W-3Przygotowanie do testu końcowego zaliczającego wykłady.14
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład problemowy
M-2Wykład informacyjny
M-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
S-2Ocena podsumowująca: Egzamin pisemny

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_03_W01
Zna podstawowe techniki programowania obiektowego, implementacje klas i korzystanie z obiektów.
PK_10-_W05C-1T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-10M-1, M-2, M-3, M-4S-1, S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_03_U01
Potrafi zidentyfikować proste obiekty w programowanym systemie i przygotować dla nich kod
PK_10-_U05C-1T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-L-1, T-L-2, T-L-4M-1, M-2, M-3, M-4S-1, S-2
PK_10-_03_U02
Potrafi korzystać w swoim kodzie z istniejących klas do tworzenia własnych obiektów
PK_10-_U06C-1T-W-2, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-10, T-L-5, T-L-1, T-L-2, T-L-3, T-L-4M-1, M-2, M-3, M-4S-1
PK_10-_03_U03
Potrafi dekomponować problemy algorytmiczne i umieszczać je w kodzie klas
PK_10-_U03C-1M-3, M-4, M-1, M-2S-1

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_03_K01
Rozumie rolę programisty w procesie wytwarzania oprogramowania
PK_10-_K02C-1T-W-1, T-W-5M-1, M-2, M-3, M-4S-1

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
PK_10-_03_W01
Zna podstawowe techniki programowania obiektowego, implementacje klas i korzystanie z obiektów.
2,0
3,0Analizuje przedstawiony kod obiektowy w języku Python i potrafi wskazać w nim obiekty i ich użycie.
3,5
4,0Wie jakie mogą wystąpić nieprawidłowości w kodzie obiektowym języka Python na podstawie analizy.
4,5
5,0Wie jak zbudować aplikację przy użyciu klas i obiektów w języku Python.

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
PK_10-_03_U01
Potrafi zidentyfikować proste obiekty w programowanym systemie i przygotować dla nich kod
2,0
3,0Na postawie wcześniej zidentyfikowanych obiektów potrafi przygotować kod.
3,5
4,0Potrafi samodzielnie zidentyfikować obiekty i na tej podstawie przygotować kod.
4,5
5,0Potrafi samodzielnie zidentyfikować hierarchię klas i współpracujących ze sobą obiektów i na tej podstawie przygotować kod.
PK_10-_03_U02
Potrafi korzystać w swoim kodzie z istniejących klas do tworzenia własnych obiektów
2,0
3,0Potrafi utworzyć obiekt na podstawie istniejącej klasy i użyć go zgodnie z podstawowym przeznaczeniem.
3,5
4,0
4,5
5,0

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
PK_10-_03_K01
Rozumie rolę programisty w procesie wytwarzania oprogramowania
2,0
3,0Widzi związek pomiędzy programowaniem obiektowym a łatwiejszą implementacją złożonych systemów w językach programowania.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. Mark Lutz, David Ascher, Python. Wprowadzenie, Helion, 2020, V

Literatura dodatkowa

  1. Mark Lutz, Python. Leksykon kieszonkowy, Helion, 2014

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Użycie istniejących klas w prostych programach.4
T-L-2Implementacja klas, tworzenie na ich podstawie obiektów, użycie tych obiektów. Dostęp do pól i metod klas w języku Python.4
T-L-3Implementacja metod specjalnych: konstruktor, reprezentacja i niszczenie obiektów. Wywoływanie metod specjalnych.3
T-L-4Budowa programu składającego się kilku współpracujących obiektów.2
T-L-5Umożliwienie rozbudowy i uproszczenia programu przez polimorfizm.2
T-L-6Projektowanie własnej struktury klas.5
20

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Zagadnienia organizacyjne, omówienie istotnosci zagadnień, wprowadzenie.1
T-W-2Istniejące klasy i ich użycie w postaci obiektów, wywołanie metod.2
T-W-3Model obiektowy: klasa, obiekt, wzajemne relacje pomiędzy obiektami. Dostęp do pól i metod klas w języku Python.3
T-W-4Metody specjalne: konstrukcja, reprezentacja i niszczenie obiektów.1
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.2
T-W-6Testowanie aplikacji obiektowych.1
T-W-7Dziedziczenie i polimorfizm.1
T-W-8Zasady dobrego projektowania klas.4
T-W-9Zasady SOLID4
T-W-10Test końcowy.1
20

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajęciach.20
A-L-2Przygotowanie do zajęć.20
A-L-3Samodzielne rozwiązywania zadań i problemów postawionych na laboratoriach.36
76
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestniczenie w wykładach.20
A-W-2Samodzielna analiza materiałów przedstawionych na wykładzie i prooponowanej literatury. Powtarzanie i przyswajanie nabywanej wiedzy.16
A-W-3Przygotowanie do testu końcowego zaliczającego wykłady.14
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_03_W01Zna podstawowe techniki programowania obiektowego, implementacje klas i korzystanie z obiektów.
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_W05Zna podstawowe techniki programowania obiektowego, implementacje klas i korzystanie z obiektów
Cel przedmiotuC-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.
Treści programoweT-W-1Zagadnienia organizacyjne, omówienie istotnosci zagadnień, wprowadzenie.
T-W-2Istniejące klasy i ich użycie w postaci obiektów, wywołanie metod.
T-W-3Model obiektowy: klasa, obiekt, wzajemne relacje pomiędzy obiektami. Dostęp do pól i metod klas w języku Python.
T-W-4Metody specjalne: konstrukcja, reprezentacja i niszczenie obiektów.
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.
T-W-6Testowanie aplikacji obiektowych.
T-W-7Dziedziczenie i polimorfizm.
T-W-10Test końcowy.
Metody nauczaniaM-1Wykład problemowy
M-2Wykład informacyjny
M-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne
Sposób ocenyS-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
S-2Ocena podsumowująca: Egzamin pisemny
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Analizuje przedstawiony kod obiektowy w języku Python i potrafi wskazać w nim obiekty i ich użycie.
3,5
4,0Wie jakie mogą wystąpić nieprawidłowości w kodzie obiektowym języka Python na podstawie analizy.
4,5
5,0Wie jak zbudować aplikację przy użyciu klas i obiektów w języku Python.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_03_U01Potrafi zidentyfikować proste obiekty w programowanym systemie i przygotować dla nich kod
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_U05Potrafi zidentyfikować proste obiekty w programowanym systemie i przygotować dla nich kod
Cel przedmiotuC-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.
Treści programoweT-W-1Zagadnienia organizacyjne, omówienie istotnosci zagadnień, wprowadzenie.
T-W-2Istniejące klasy i ich użycie w postaci obiektów, wywołanie metod.
T-W-3Model obiektowy: klasa, obiekt, wzajemne relacje pomiędzy obiektami. Dostęp do pól i metod klas w języku Python.
T-W-4Metody specjalne: konstrukcja, reprezentacja i niszczenie obiektów.
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.
T-L-1Użycie istniejących klas w prostych programach.
T-L-2Implementacja klas, tworzenie na ich podstawie obiektów, użycie tych obiektów. Dostęp do pól i metod klas w języku Python.
T-L-4Budowa programu składającego się kilku współpracujących obiektów.
Metody nauczaniaM-1Wykład problemowy
M-2Wykład informacyjny
M-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne
Sposób ocenyS-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
S-2Ocena podsumowująca: Egzamin pisemny
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Na postawie wcześniej zidentyfikowanych obiektów potrafi przygotować kod.
3,5
4,0Potrafi samodzielnie zidentyfikować obiekty i na tej podstawie przygotować kod.
4,5
5,0Potrafi samodzielnie zidentyfikować hierarchię klas i współpracujących ze sobą obiektów i na tej podstawie przygotować kod.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_03_U02Potrafi korzystać w swoim kodzie z istniejących klas do tworzenia własnych obiektów
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_U06Potrafi korzystać w swoim kodzie z istniejących klas do tworzenia własnych obiektów
Cel przedmiotuC-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.
Treści programoweT-W-2Istniejące klasy i ich użycie w postaci obiektów, wywołanie metod.
T-W-3Model obiektowy: klasa, obiekt, wzajemne relacje pomiędzy obiektami. Dostęp do pól i metod klas w języku Python.
T-W-4Metody specjalne: konstrukcja, reprezentacja i niszczenie obiektów.
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.
T-W-6Testowanie aplikacji obiektowych.
T-W-7Dziedziczenie i polimorfizm.
T-W-10Test końcowy.
T-L-5Umożliwienie rozbudowy i uproszczenia programu przez polimorfizm.
T-L-1Użycie istniejących klas w prostych programach.
T-L-2Implementacja klas, tworzenie na ich podstawie obiektów, użycie tych obiektów. Dostęp do pól i metod klas w języku Python.
T-L-3Implementacja metod specjalnych: konstruktor, reprezentacja i niszczenie obiektów. Wywoływanie metod specjalnych.
T-L-4Budowa programu składającego się kilku współpracujących obiektów.
Metody nauczaniaM-1Wykład problemowy
M-2Wykład informacyjny
M-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne
Sposób ocenyS-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Potrafi utworzyć obiekt na podstawie istniejącej klasy i użyć go zgodnie z podstawowym przeznaczeniem.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_03_U03Potrafi dekomponować problemy algorytmiczne i umieszczać je w kodzie klas
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_U03Potrafi mysleć w kategoriach dekompozycji problemów algorytmicznych do elementarnych konstrukcji języka programowania
Cel przedmiotuC-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.
Metody nauczaniaM-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne
M-1Wykład problemowy
M-2Wykład informacyjny
Sposób ocenyS-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_03_K01Rozumie rolę programisty w procesie wytwarzania oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_K02Rozumie rolę programisty w procesie wytwarzania oprogramowania
Cel przedmiotuC-1Słuchacz zna leksykę i składnię języka Python w zakresie niezbędnym do samodzielnego konstruowania prostych programów w paradygmacie obiektowym, umie identyfikować elementy obiektowe przedstawionego problemu.
Treści programoweT-W-1Zagadnienia organizacyjne, omówienie istotnosci zagadnień, wprowadzenie.
T-W-5Obiekt jako uproszczenie kodu programu. Implementacja struktur danych w języku Python.
Metody nauczaniaM-1Wykład problemowy
M-2Wykład informacyjny
M-3Ćwiczenia laboratoryjne
M-4Nauka i ćwiczenia własne
Sposób ocenyS-1Ocena formująca: Na podstawie obserwacji pracy podczas zajec laboratoryjnych
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Widzi związek pomiędzy programowaniem obiektowym a łatwiejszą implementacją złożonych systemów w językach programowania.
3,5
4,0
4,5
5,0