Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Elektryczny - Elektrotechnika (S1)

Sylabus przedmiotu Informatyka i programowanie obiektowe:

Informacje podstawowe

Kierunek studiów Elektrotechnika
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów nauk technicznych, studiów inżynierskich
Profil ogólnoakademicki
Moduł
Przedmiot Informatyka i programowanie obiektowe
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Elektrotechniki Teoretycznej i Informatyki
Nauczyciel odpowiedzialny Marcin Ziółkowski <Marcin.Ziolkowski@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
wykładyW2 30 3,00,62egzamin
laboratoriaL2 30 2,00,38zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Ukończony moduł Podstawy informatyki.
W-2Ukończony moduł Matematyka.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z zasadami programowania obiektowego.
C-2Ukształtowanie umiejętności z zakresu technik programowania obiektowego w języku C#.
C-3Ukształtowanie umiejętności praktycznych z zakresu procesu wytwarzania oprogramowania (tworzenie, kompilacja, debugowanie).

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

KODTreść programowaGodziny
laboratoria
T-L-1Zapoznanie się ze środowiskiem Visual Studio. Tworzenie pierwszych aplikacji w języku C#.2
T-L-2Tworzenie i kompilowanie prostych aplikacji w konsoli.2
T-L-3Deklarowanie i wywoływanie metod. Operacje na plikach tekstowych.2
T-L-4Debuggowanie, monitorowanie przepełnienia stosu na różnych przykładach rekurencji.2
T-L-5Metody. Biblioteki metod 1.2
T-L-6Metody. Biblioteki metod 2.2
T-L-7Sprawdzian 1.2
T-L-8Aplikacja Windows Forms.2
T-L-9Klasy, tworzenie obiektów.2
T-L-10Klasy, konstruktor.2
T-L-11Klasy, kopiowanie płytkie i głębokie obiektów.2
T-L-12Projektowanie i tworzenie prostego programu z wykorzystaniem klas i obiektów.2
T-L-13Klasy, dziedziczenie.2
T-L-14Sprawdzian 2.2
T-L-15Sprawdzian poprawkowy.2
30
wykłady
T-W-1Wstęp. Warunki uzyskania zaliczenia. Przegląd możliwości nowoczesnego języka programowania C#. Struktura aplikacji konsolowej C#. Formatowanie. Kompilacja i uruchomienie pierwszego programu. Środowisko Visual Studio i Visual C#.NET. Typy, deklaracja zmiennych. Wyrażenia kluczowe.2
T-W-2Typy wartości. Typ wyliczeniowy. Prosta struktura. Typy referencyjne. Literały. Konwersje danych. Opakowywanie i rozpakowywanie. Operatory. Instrukcje sterujące.2
T-W-3Wyjątki. Instrukcje iteracyjne. Tablice. Tablice nieregularne. Operacje na tablicach. Klasa ArrayList. Debuggowanie.2
T-W-4Metody. Przesyłanie argumentów do metody: przez wartość, przez referencję, jako parametr wyjściowy. Przesyłanie dowolnej liczby argumentów. Przesyłanie tablic. Przeciążanie nazwy metody. Argumenty metody MAIN.2
T-W-5Algorytmy wyszukiwania liniowego i liniowego z wartownikiem. Wyszukiwanie binarne. Iteracyjne wyszukiwanie binarne. Metoda String.Compare.2
T-W-6Rekurencja. Zalety i wady rekurencji. Algorytmy typu "dziel-i-zwyciężaj". Algorytmy sortowania.2
T-W-7Struktury. Dostęp do plików. Pliki tekstowe, pliki binarne.2
T-W-8Programowanie obiektowe - wstęp, idea. Definicja klasy w języku C#. Ukrywanie informacji. Modyfikatory dostępu. Klasy częściowe. Metody częściowe. Język UML.2
T-W-9Rekurencyjne struktury danych. Lista jednokierunkowa. Lista dwukierunkowa. Diagram klas. Projektowanie klas.2
T-W-10Konstruktor. Lista inicjalizacyjna konstruktorów. Inicjalizacja struktur. Kolekcje zaimplementowane w Visual C#. Klasa String Bulider.2
T-W-11Inicjalizatory. Finalizator. Wzorce projektowe. Kopiowanie obiektów. Porady praktyczne. Wartości Null i typy Nullable.2
T-W-12Właściwości. Inicjalizowanie obiektów przy pomocy właściwości. Kolekcja Hashtable. Kolekcja SortedList.2
T-W-13Indeksatory. Enkapsulacja. Wzorzec proxy. Składowe statyczne. Konstruktor statyczny. Klasy statyczne. Metody rozszerzające.2
T-W-14Dziedziczenie. Idea dziedziczenia. Przykłady. Przypisywanie klasy. Metody wirtualne.2
T-W-15Polimorfizm. Klasy abstrakcyjne i interfejsy. Klasy i metody zamknięte. Metody i typy generyczne. Refleksja i atrybuty.2
30

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

KODForma aktywnościGodziny
laboratoria
A-L-1uczestnictwo w zajęciach30
A-L-2Przygotowanie do zajęć.10
A-L-3Samodzielne wykonywanie programów (zadania domowe).10
A-L-4Przygotowanie do zaliczenia poszczególnych ćwiczeń.10
60
wykłady
A-W-1uczestnictwo w zajęciach30
A-W-2Przygotowanie do zajęć (utrwalanie i powtarzanie materiału)20
A-W-3Praca własna z literaturą20
A-W-4Przygotowanie do zaliczenia20
90

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład multimedialny z przykładami.
M-2Praca własna w laboratorium komputerowym.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Sprawdzian z wykładów.
S-2Ocena formująca: Zaliczenie laboratorium.
S-3Ocena podsumowująca: Sprawdzian końcowy z wykładów.
S-4Ocena podsumowująca: Zaliczenie końcowe laboratorium.

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
EL_1A_B05_W13
Student zna podstawowe mechanizmy związane z obiektowo zorientowanym językiem C#.
EL_1A_W13T1A_W02, T1A_W07InzA_W02C-1M-1S-1, S-3

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
EL_1A_B05_U08
Student nabył umiejętność analizy kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w obiektowo zorientowanym języku C#.
EL_1A_U01, EL_1A_U08T1A_U01, T1A_U08, T1A_U09InzA_U01, InzA_U02C-2, C-3T-L-1M-2S-2, S-4

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
EL_1A_B05_W13
Student zna podstawowe mechanizmy związane z obiektowo zorientowanym językiem C#.
2,0
3,0Student zna podstawowe mechanizmy związane z obiektowo zorientowanym językiem C#.
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
EL_1A_B05_U08
Student nabył umiejętność analizy kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w obiektowo zorientowanym języku C#.
2,0
3,0Student nabył umiejętność analizy kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w obiektowo zorientowanym języku C#.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. J. Sharp, Microsoft Visual C# 2005 krok po kroku, APN PROMISE Sp. z o. o., Warszawa, 2006
  2. J. Liberty, B. MacDonald, C# 2005, Helion, Warszawa, 2006
  3. A. Stefańczyk, Sekrety języka C#, Złote Myśli Sp. z o.o., Warszawa, 2007

Literatura dodatkowa

  1. M. Lis, C#. Ćwiczenia, Helion, Warszawa, 2005
  2. P. Wróblewski, Algorytmy struktury danych i techniki programowania, Helion, Warszawa, 2001

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Zapoznanie się ze środowiskiem Visual Studio. Tworzenie pierwszych aplikacji w języku C#.2
T-L-2Tworzenie i kompilowanie prostych aplikacji w konsoli.2
T-L-3Deklarowanie i wywoływanie metod. Operacje na plikach tekstowych.2
T-L-4Debuggowanie, monitorowanie przepełnienia stosu na różnych przykładach rekurencji.2
T-L-5Metody. Biblioteki metod 1.2
T-L-6Metody. Biblioteki metod 2.2
T-L-7Sprawdzian 1.2
T-L-8Aplikacja Windows Forms.2
T-L-9Klasy, tworzenie obiektów.2
T-L-10Klasy, konstruktor.2
T-L-11Klasy, kopiowanie płytkie i głębokie obiektów.2
T-L-12Projektowanie i tworzenie prostego programu z wykorzystaniem klas i obiektów.2
T-L-13Klasy, dziedziczenie.2
T-L-14Sprawdzian 2.2
T-L-15Sprawdzian poprawkowy.2
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wstęp. Warunki uzyskania zaliczenia. Przegląd możliwości nowoczesnego języka programowania C#. Struktura aplikacji konsolowej C#. Formatowanie. Kompilacja i uruchomienie pierwszego programu. Środowisko Visual Studio i Visual C#.NET. Typy, deklaracja zmiennych. Wyrażenia kluczowe.2
T-W-2Typy wartości. Typ wyliczeniowy. Prosta struktura. Typy referencyjne. Literały. Konwersje danych. Opakowywanie i rozpakowywanie. Operatory. Instrukcje sterujące.2
T-W-3Wyjątki. Instrukcje iteracyjne. Tablice. Tablice nieregularne. Operacje na tablicach. Klasa ArrayList. Debuggowanie.2
T-W-4Metody. Przesyłanie argumentów do metody: przez wartość, przez referencję, jako parametr wyjściowy. Przesyłanie dowolnej liczby argumentów. Przesyłanie tablic. Przeciążanie nazwy metody. Argumenty metody MAIN.2
T-W-5Algorytmy wyszukiwania liniowego i liniowego z wartownikiem. Wyszukiwanie binarne. Iteracyjne wyszukiwanie binarne. Metoda String.Compare.2
T-W-6Rekurencja. Zalety i wady rekurencji. Algorytmy typu "dziel-i-zwyciężaj". Algorytmy sortowania.2
T-W-7Struktury. Dostęp do plików. Pliki tekstowe, pliki binarne.2
T-W-8Programowanie obiektowe - wstęp, idea. Definicja klasy w języku C#. Ukrywanie informacji. Modyfikatory dostępu. Klasy częściowe. Metody częściowe. Język UML.2
T-W-9Rekurencyjne struktury danych. Lista jednokierunkowa. Lista dwukierunkowa. Diagram klas. Projektowanie klas.2
T-W-10Konstruktor. Lista inicjalizacyjna konstruktorów. Inicjalizacja struktur. Kolekcje zaimplementowane w Visual C#. Klasa String Bulider.2
T-W-11Inicjalizatory. Finalizator. Wzorce projektowe. Kopiowanie obiektów. Porady praktyczne. Wartości Null i typy Nullable.2
T-W-12Właściwości. Inicjalizowanie obiektów przy pomocy właściwości. Kolekcja Hashtable. Kolekcja SortedList.2
T-W-13Indeksatory. Enkapsulacja. Wzorzec proxy. Składowe statyczne. Konstruktor statyczny. Klasy statyczne. Metody rozszerzające.2
T-W-14Dziedziczenie. Idea dziedziczenia. Przykłady. Przypisywanie klasy. Metody wirtualne.2
T-W-15Polimorfizm. Klasy abstrakcyjne i interfejsy. Klasy i metody zamknięte. Metody i typy generyczne. Refleksja i atrybuty.2
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1uczestnictwo w zajęciach30
A-L-2Przygotowanie do zajęć.10
A-L-3Samodzielne wykonywanie programów (zadania domowe).10
A-L-4Przygotowanie do zaliczenia poszczególnych ćwiczeń.10
60
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1uczestnictwo w zajęciach30
A-W-2Przygotowanie do zajęć (utrwalanie i powtarzanie materiału)20
A-W-3Praca własna z literaturą20
A-W-4Przygotowanie do zaliczenia20
90
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaEL_1A_B05_W13Student zna podstawowe mechanizmy związane z obiektowo zorientowanym językiem C#.
Odniesienie do efektów kształcenia dla kierunku studiówEL_1A_W13Ma uporządkowaną wiedzę w zakresie metodyki i technik programowania i symulacji
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_W02ma podstawową wiedzę w zakresie kierunków studiów powiązanych ze studiowanym kierunkiem studiów
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Cel przedmiotuC-1Zapoznanie studentów z zasadami programowania obiektowego.
Metody nauczaniaM-1Wykład multimedialny z przykładami.
Sposób ocenyS-1Ocena formująca: Sprawdzian z wykładów.
S-3Ocena podsumowująca: Sprawdzian końcowy z wykładów.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student zna podstawowe mechanizmy związane z obiektowo zorientowanym językiem C#.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaEL_1A_B05_U08Student nabył umiejętność analizy kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w obiektowo zorientowanym języku C#.
Odniesienie do efektów kształcenia dla kierunku studiówEL_1A_U01Potrafi pozyskiwać informacje z literatury, baz danych i innych źródeł, potrafi integrować uzyskane informacje, dokonywać ich interpretacji a także wyciągać wnioski oraz formułować i uzasadniać opinie
EL_1A_U08Potrafi posłużyć się właściwie dobranymi środowiskami programistycznymi, symulatorami oraz narzędziami komputerowo wspomaganego projektowania do symulacji, projektowania i weryfikacji elementów, urządzeń i maszyn elektrycznych, przekształtników oraz prostych instalacji elektrycznych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_U01potrafi pozyskiwać informacje z literatury, baz danych oraz innych właściwie dobranych źródeł, także w języku angielskim lub innym języku obcym uznawanym za język komunikacji międzynarodowej w zakresie studiowanego kierunku studiów; potrafi integrować uzyskane informacje, dokonywać ich interpretacji, a także wyciągać wnioski oraz formułować i uzasadniać opinie
T1A_U08potrafi planować i przeprowadzać eksperymenty, w tym pomiary i symulacje komputerowe, interpretować uzyskane wyniki i wyciągać wnioski
T1A_U09potrafi wykorzystać do formułowania i rozwiązywania zadań inżynierskich metody analityczne, symulacyjne oraz eksperymentalne
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_U01potrafi planować i przeprowadzać eksperymenty, w tym pomiary i symulacje komputerowe, interpretować uzyskane wyniki i wyciągać wnioski
InzA_U02potrafi wykorzystać do formułowania i rozwiązywania zadań inżynierskich metody analityczne, symulacyjne oraz eksperymentalne
Cel przedmiotuC-2Ukształtowanie umiejętności z zakresu technik programowania obiektowego w języku C#.
C-3Ukształtowanie umiejętności praktycznych z zakresu procesu wytwarzania oprogramowania (tworzenie, kompilacja, debugowanie).
Treści programoweT-L-1Zapoznanie się ze środowiskiem Visual Studio. Tworzenie pierwszych aplikacji w języku C#.
Metody nauczaniaM-2Praca własna w laboratorium komputerowym.
Sposób ocenyS-2Ocena formująca: Zaliczenie laboratorium.
S-4Ocena podsumowująca: Zaliczenie końcowe laboratorium.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student nabył umiejętność analizy kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w obiektowo zorientowanym języku C#.
3,5
4,0
4,5
5,0