OPIS MODUŁU KSZTAŁCENIA (SYLABUS) NAZWA MODUŁU KSZTAŁCENIA/PRZEDMIOTU: Programowanie III Kod przedmiotu: IDI.21 Rodzaj przedmiotu: kierunkowy; obowiązkowy Wydział: Budowy Maszyn i Informatyki Kierunek: Informatyka Specjalność (specjalizacja): Poziom studiów: pierwszego stopnia Profil studiów: ogólnoakademicki Forma studiów: stacjonarne Rok: 2 Semestr: 3 Formy i liczba godzin: wykłady 30; - 45; Liczba punktów ECTS: 6 1. Założenia i cele przedmiotu Zapoznanie studentów z podstawowymi zagadnieniami dotyczącymi programowania w nowoczesnym języku obiektowym na przykładzie języka C#. Omawiania jest składnia języka C#, typy danych, instrukcje warunkowe, funkcje, tablice, struktury, kolekcje, zagadnienie programowania obiektowego, w tym specyfikatorów dostępu, dziedziczenia, klas abstrakcji, metod wirtualnych, przeciążania metod. Na ch laboratoryjnych studenci zdobywają umiejętność praktycznego zastosowania poznanych konstrukcji i tworzenia programów w języku C#. 2. Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi znajomość podstawowych zasad programowania uzyskana na przedmiotach Programowanie I oraz Programowanie II. 3. Opis sposobu wyznaczania punktów ECTS Forma aktywności Liczba godzin Godziny kontaktowe: uczestnictwo w zajęciach (wykłady + ) 75 Samodzielne studiowanie tematyki wykładów 45 Przygotowanie się do ćwiczeń laboratoryjnych 30 Przygotowanie się do kolokwiów 30 Suma godzin 180 Liczba punktów ECTS dla modułu (przedmiotu) 6 Objaśnienia: * - praca własna studenta, wymienić formy aktywności, np. (1) przygotowanie do, (2) opracowanie wyników, (3) czytanie wskazanej literatury, (4) napisanie raportu z, (5) przygotowanie do egzaminu itp. 1
4. Wskaźniki sumaryczne a) liczba godzin dydaktycznych (tzw. kontaktowych) i liczba punktów ECTS wymagających bezpośredniego udziału nauczycieli akademickich, realizowanych w formie studiów stacjonarnych i niestacjonarnych, Liczba godzin kontaktowych 75 Liczba punktów ECTS 6 b) liczba godzin dydaktycznych (tzw. kontaktowych) i liczba punktów ECTS o charakterze praktycznym (ch audytoryjnych, laboratoryjnych, projektowych itp.) Liczba godzin kontaktowych 45 Liczba punktów ECTS 3 5. Zakładane efekty kształcenia Numer (Symbol) Efekty kształcenia dla przedmiotu WIEDZA IDI.21_W01 ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu programowania w języku C# IDI.21_W02 ma elementarną wiedzę na temat cyklu życia systemów informatycznych oraz oprogramowania. IDI.21_W03 ma uporządkowaną wiedzę w zakresie metod i technik programowania UMIEJĘTNOŚCI IDI.21_U01 ma umiejętność samokształcenia się, potrafi pozyskiwać informacje z literatury, baz danych oraz innych właściwie dobranych źródeł, także w języku angielskim w zakresie programowania i konstrukcji języków programowania, potrafi integrować uzyskane informacje, dokonywać ich interpretacji, a także wyciągać wnioski oraz formułować i uzasadniać opinie IDI.21_U02 potrafi dokonać identyfikacji i sformułować specyfikację prostych zadań programistycznych o charakterze praktycznym IDI.21_U03 potrafi zgodnie z zadaną specyfikacją zaprojektować oraz zrealizować proste oprogramowanie, używając właściwych metod, technik i narzędzi programistycznych KOMPETENCJE SPOŁECZNE IDI.21_K01 rozumie potrzebę uczenia się przez całe życie; potrafi inspirować i organizować proces uczenia się innych osób Odniesienie do efektów kształcenia dla kierunku IF1A_W05 IF1A_W19 IF1A_W04 IF1A_U06 IF1A_U23 IF1A_U27 IF1A_K01 Objaśnienia symbolu efektu dla przedmiotu (lewa kolumna w tabeli): P efekt kształcenia dla przedmiotu, pozostałe oznaczenia jak na druku DNiSS nr PK_IIA. W efektach kształcenia uwzględniać tylko efekty, które są mierzalne, weryfikowalne, obserwowalne. 2
6. Odniesienie efektów kształcenia do form i sposób oceny osiągnięcia przez studenta efektów kształcenia Numer Odniesienie Efekty kształcenia dla przedmiotu (Symbol) do form Sposób oceny WIEDZA IDI.21_W01 ma uporządkowaną, podbudowaną teoretycznie wykład kolokwia wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu programowania w języku C# IDI.21_W02 ma elementarną wiedzę na temat cyklu życia wykład kolokwia systemów informatycznych oraz oprogramowania. IDI.21_W03 ma uporządkowaną wiedzę w zakresie metod i technik programowania wykład kolokwia IDI.21_U01 IDI.21_U02 UMIEJĘTNOŚCI ma umiejętność samokształcenia się, potrafi pozyskiwać informacje z literatury, baz danych oraz innych właściwie dobranych źródeł, także w języku angielskim w zakresie programowania i konstrukcji języków programowania, potrafi integrować uzyskane informacje, dokonywać ich interpretacji, a także wyciągać wnioski oraz formułować i uzasadniać opinie potrafi dokonać identyfikacji i sformułować specyfikację prostych zadań programistycznych o charakterze praktycznym IDI.21_U03 potrafi zgodnie z zadaną specyfikacją zaprojektować oraz zrealizować proste oprogramowanie, używając właściwych metod, technik i narzędzi programistycznych IDI.21_K01 KOMPETENCJE SPOŁECZNE rozumie potrzebę uczenia się przez całe życie; potrafi inspirować i organizować proces uczenia się innych osób wykład, Objaśnienia: Sposób oceny wpisać jak oceniane jest osiągnięcie przez studenta zakładanego efektu kształcenia (np. egzamin ustny, sprawdzian pisemny, projekt itp.) 7. Opis sposobu weryfikacji osiągniętych przez studenta założonych dla przedmiotu efektów kształcenia (należy opisać sposób weryfikacji każdego efektu kształcenia oddzielnie) IDI.21_W01 - weryfikacja poprzez pytania na kolokwium sprawdzającym IDI.21_W02 - weryfikacja poprzez pytania na kolokwium sprawdzającym IDI.21_W03 - weryfikacja poprzez pytania na kolokwium sprawdzającym IDI.21_U01 - weryfikacja poprzez zadania na kolokwium i postępów podczas IDI.21_U02 - weryfikacja poprzez zadania na kolokwium i postępów podczas IDI.21_U03 - weryfikacja poprzez zadania na kolokwium i postępów podczas IDI.21_K01 - weryfikacja poprzez postępów podczas 8. Opis zasad zaliczania przedmiotu i sposobu ustalania oceny końcowej z przedmiotu Ocenę końcową wyznacza prowadzący wykład jako wypadkową ocenę z ćwiczeń laboratoryjnych i z zaliczenia wykładów. 3
9. Opis form a) Wykłady Treści programowe (tematyka ): 1. Podstawowe konstrukcje programistyczne. Funkcja Main(). Wejście i wyjście konsolowe. Parametry przekazywane z linii komend. 2. Typy i zmienne (integer, double, bool, char, string, decimal). Domyślna inicjalizacja zmiennych. Konwersja i rzutowanie typów. 3. Instrukcje warunkowe i sterujące: if, for, while, switch. 4. Tablice. Deklaracje i inicjalizacje tablic. Kopiowanie tablic. 5. Funkcje. Przekazywanie parametrów przez wartość i referencje, parametry z nazwami i domyślne. Przekazywanie tablic jako argumentu funkcji. Przeciążanie funkcji. Rekurencja. 6. Zasady programowania obiektowego. Obiekty, klasy i struktury. Pola prywatne i publiczne. 7. Właściwości, pola statyczne, konstruktory parametrowe. 8. Klasy zagnieżdżone, klasy z atrybutem partial. Extensions methods, przeciążanie operatorów. 9. Dziedziczenie: interfejsy, klasy abstrakcyjne, metody wirtualne. Przeciążanie metod klasy bazowej. 10. Pliki. Operacje zapisu i odczytu na plikach tekstowych. Obsługa wyjątków. 11. Kolekcje i typy generyczne: List, SortedList, Dictionary, SortedDictionary, Stack, Queue i inne. 12. Iterowanie elementów kolekcji oraz wykonywane na nich operacje. Stos i sterta. Boxing i unboxing. 13. Zmienne typu string i operacje na nich. StringBuilder. Wyrażenia regularne. 14. Przeszukiwanie kolekcji obiektów z wykorzystaniem LINQ to objects. LINQ to XML. Metody dydaktyczne i sposób organizacji : Wykład połączony z praktycznymi demonstracjami z wykorzystaniem komputera i środków audiowizualnych. Forma i kryteria zaliczenia (w przypadku egzaminu wymagania egzaminacyjne): Warunkiem zaliczenia całości przedmiotu jest uzyskanie zaliczenia z ćwiczeń laboratoryjnych oraz zaliczenie jednego kolokwium z teorii przedstawianej na wykładach. Wykaz literatury podstawowej i uzupełniającej (maksymalnie 5 pozycji w każdej grupie): Wykaz literatury podstawowej: 1. strona internetowa https://msdn.microsoft.com/en-us/library 2. Ian Griffiths.: C#. Programowanie, Helion, 2012 3. Jones A.: C#: księga przykładów, APN Promise, 2005 4. Lis M.: C#:, Helion, 2006 Wykaz literatury uzupełniającej: 1. https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/index 2. https://www.dotnetperls.com/ 3. Michaelis M.: Essential C# 7.0, Addison-Wesley, 2015 4. Troelsen A.: Pro C# 5.0 and the.net 4.5 Platform, Apress 2012 4
b) Opis pozostałych form (zgodnie z programem studiów) według schematu podanego dla wykładów Ćwiczenia Treści programowe (tematyka ): 1. Tworzenie prostego programu konsolowego w C# z wykorzystaniem parametrów przekazywanych z linii komend. 2. Wykorzystanie w programie typów integer, double, bool, char, string i decimal. Domyślna inicjalizacja zmiennych. Konwersja i rzutowanie typów. 3. Praktyczne wykorzystanie instrukcji warunkowych i sterujących: if, for, while, switch. 4. Tworzenie programu z wykorzystaniem tablic oraz kopiowanie tablic. 5. Tworzenie programu wykorzystującego funkcje z przekazywaniem parametrów przez wartość i referencje, parametry z nazwami i domyślne. Przekazywanie tablic jako argumentu funkcji. Zastosowanie przeciążania funkcji i rekurencji. 6. Tworzenie prostego programu wykorzystującego zasady programowania obiektowego. Tworzenie klas z polami prywatnymi i publicznymi. 7. Praktyczne zastosowanie właściwości, pól statycznych klasy i konstruktorów parametrowych. 8. Użycie klas zagnieżdżonych, klasy z atrybutem partial oraz extensions methods i przeciążania operatorów. 9. Tworzenie programu wykorzystującego dziedziczenie oraz interfejsy, klasy abstrakcyjne, metody wirtualne i przeciążanie metod klasy bazowej. 10. Praktyczne zastosowanie operacje zapisu i odczytu na plikach tekstowych. Obsługa wyjątków. 11. Zastosowanie w programie kolekcji List, SortedList, Dictionary, SortedDictionary, Stack, Queue. 12. Iterowanie elementów kolekcji oraz wykonywanie na nich operacji. 13. Zastosowanie operacji na zmiennych typu string i operacje na nich, StringBuildera i wyrażeń regularnych. 14. Przeszukiwanie kolekcji obiektów z wykorzystaniem LINQ to objects. LINQ to XML. Metody dydaktyczne: Praktyczne tworzenie przez studentów programów komputerowych z wykorzystaniem konstrukcji omawianych na wykładach. Forma i warunki zaliczenia: Zaliczenie ćwiczeń uzyskuje się na podstawie obecności, aktywności oraz zaliczenia dwóch kolokwiów w ciągu semestru. Wykaz literatury podstawowej: 5. strona internetowa https://msdn.microsoft.com/en-us/library 6. Ian Griffiths.: C#. ProgramowanieHelion, 2012 7. Jones A..: C#: księga przykładów, APN Promise, 2005 8. Lis M.: C#:, Helion, 2006 Wykaz literatury uzupełniającej: 5. https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/index 6. https://www.dotnetperls.com/ 7. Michaelis M.: Essential C# 7.0, Addison-Wesley, 2015 8. Troelsen A.: Pro C# 5.0 and the.net 4.5 Platform, Apress 2012 5