- Nazwa przedmiotu:
- Programowanie obiektowe
- Koordynator przedmiotu:
- dr Jan Bródka
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Informatyka
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- Semestr nominalny:
- 3 / rok ak. 2013/2014
- Liczba punktów ECTS:
- 4
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 1. godziny kontaktowe - 60 h; w tym
a. obecność na wykładach – 30 h
b. obecność na laboratoriach – 30 h
2. przygotowanie do zajęć laboratoryjnych – 45 h
Razem nakład pracy studenta 105 h = 4 pkt. ECTS
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- 1. obecność na wykładach – 30 h
2. obecność na laboratoriach – 30 h
Razem 60 h, co odpowiada 2 pkt. ECTS
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- 1. obecność na laboratoriach – 30 h
2. przygotowanie do zajęć laboratoryjnych – 45 h
Razem 75 h, co odpowiada 3 pkt. ECTS
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład30h
- Ćwiczenia0h
- Laboratorium30h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Znajomość co najmniej jednego języka programowania wysokiego poziomu (najlepiej C++), umiejętność konstruowania i implementowania prostych algorytmów.
Przedmioty poprzedzające: Programowanie (C/C++, sem. 2)
- Limit liczby studentów:
- Bez limitu
- Cel przedmiotu:
- Celem przedmiotu jest zapoznanie się z paradygmatem programowania obiektowego oraz praktyczna nauka programowania w jednym z popularnych języków obiektowych (obecnie jako przykładowy język obiektowy wykorzystywany jest język C#).
Po ukończeniu kursu studenci powinni:
znać podstawowe pojęcia i koncepcje programowania obiektowego takie jak klasa, obiekt, dziedziczenie, polimorfizm, hermetyzacja danych.
znać i umieć stosować wszystkie (również zaawansowane) konstrukcje wybranego języka obiektowego (obecnie jest to język C#, a omawiane konstrukcje to miedzy innymi: interfejsy, typy uogólnione, delegacje, wyrażenia lambda, zderzenia, wyjątki, definiowanie operatorów)
posiadać podstawową wiedzę o jednym z popularnych środowisk programistycznych związanych z paradygmatem programowania obiektowego (w tym przypadku jest to środowisko .NET)
posiadać praktyczną umiejętność tworzenia prostych aplikacji konsolowych.
- Treści kształcenia:
- Język C++
• Przypomnienie i uzupełnienie informacji o bibliotece STL.
Język C#
• Podstawowe informacje na temat platformy .NET, przegląd konstrukcji języka C#.
• Klasy, dziedziczenie i polimorfizm, hermetyzacja danych, metody przeciążone, typy referencyjne i bezpośrednie
• Definiowanie operatorów, właściwości i indeksatorów.
• Interfejsy.
• Typy uogólnione (generyczne).
• Delegacje, metody anonimowe, wyrażenia lambda, zdarzenia.
• Wyjątki.
• Przegląd standardowej biblioteki klas (w tym kolekcje standardowe, strumienie i pliki, serializacja).
• Kod nienadzorowany, wskaźniki, łączenie z C++.
- Metody oceny:
- Zaliczenie przedmiotu na podstawie laboratorium, na każdych zajęciach oddzielnie punktowane zadanie, ocena końcowa zależy od uzyskanej sumy punktów, obecność obowiązkowa, nie ma możliwości poprawiania poszczególnych zadań. Łączną ocenę punktową przelicza się na stopnie według poniższych zasad:
b) 3.5 jeżeli uzyskali od 61 do 70 pkt.
c) 4.0 jeżeli uzyskali od 71 do 80 pkt.
d) 4.5 jeżeli uzyskali od 81 do 90 pkt.
e) 5.0 jeżeli uzyskali powyżej 90 pkt.
- Egzamin:
- nie
- Literatura:
- STL
• N.M. Josuttis - "C++ Biblioteka standardowa. Podręcznik programisty", Helion, 2003
• materiały z wykładów na stronie internetowej www.mini.pw.edu.pl/~brodka
Język C#
• Joseph Albahari, Ben Albahari - "C# 3.0, Leksykon Kieszonkowy", Helion, 2008
• Stephen C. Perry - "C# i .NET", Helion, 2006
• Jesse Liberty - "C#. Programowanie", Helion, 2006
• Andrew Troelsen – "Język C# i platforma .NET", wyd. 2, PWN, 2006
• materiały z wykładów na stronie internetowej www.mini.pw.edu.pl/~brodka
- Witryna www przedmiotu:
- brak
- Uwagi:
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Efekt W01
- Ma uporządkowaną wiedzę ogólną w zakresie języków i paradygmatów programowania
Weryfikacja: bieżąca ocena zadań wykonywanych na laboratorium
Powiązane efekty kierunkowe:
K_W06
Powiązane efekty obszarowe:
T1A_W03
- Efekt W02
- Ma szczegółową wiedzę nt. projektowania i programowania obiektowego
Weryfikacja: bieżąca ocena zadań wykonywanych na laboratorium
Powiązane efekty kierunkowe:
K_W08
Powiązane efekty obszarowe:
T1A_W04
Profil ogólnoakademicki - umiejętności
- Efekt U01
- Ma umiejętność formułowania algorytmów i ich programowania z użyciem jednego z popularnych narzędzi
Weryfikacja: bieżąca ocena zadań wykonywanych na laboratorium
Powiązane efekty kierunkowe:
K_U11
Powiązane efekty obszarowe:
T1A_U09, T1A_U14, T1A_U15