Wydział Informatyki - Informatyka (S1)
specjalność: Inżynieria oprogramowania
Sylabus przedmiotu Język C#:
Informacje podstawowe
Kierunek studiów | Informatyka | ||
---|---|---|---|
Forma studiów | studia stacjonarne | Poziom | pierwszego stopnia |
Tytuł zawodowy absolwenta | inżynier | ||
Obszary studiów | charakterystyki PRK, kompetencje inżynierskie PRK | ||
Profil | ogólnoakademicki | ||
Moduł | — | ||
Przedmiot | Język C# | ||
Specjalność | przedmiot wspólny | ||
Jednostka prowadząca | Katedra Inżynierii Oprogramowania | ||
Nauczyciel odpowiedzialny | Maciej Poliwoda <Maciej.Poliwoda@zut.edu.pl> | ||
Inni nauczyciele | Tomasz Hyla <Tomasz.Hyla@zut.edu.pl>, Valery Rogoza <wrogoza@zut.edu.pl> | ||
ECTS (planowane) | 4,0 | ECTS (formy) | 4,0 |
Forma zaliczenia | zaliczenie | Język | polski |
Blok obieralny | 1 | Grupa obieralna | 1 |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Wprowadzenie do informatyki |
W-2 | Programowanie 1 |
W-3 | Algorytmy 1 |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Znajomość podstawowych właściwości i oprogramowania platformy Visual Studio. |
C-2 | Zdobycie umiejętności przetwarzania różnych typów danych, tworzenia klas i obiektów z wykorzystaniem języka C# |
C-3 | Zdobycie wiedzy, umiejętności i nawyków posługiwania się technikami tworzenia skutecznych kodów w C#, w tym: przeciążaniem operatorów, zastosowaniem indeksatorów i właściwości, budową interfejsów, tworzeniem i wykorzystaniem wyjątków, tworzeniem delegatów i zdarzeń, oraz dynamiczną identyfikacją typów. |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Cechy platformy programowania wizualnego Visual Studio | 2 |
T-L-2 | Składnia języka C#. Tworzenie i analiza prostych kodów. Instrukcje warunkowe. | 2 |
T-L-3 | Typy danych, literały i zmienne języka C# | 2 |
T-L-4 | Operatory języka C#, podstawowe techniki tworzenia klas, obiektów i metod | 2 |
T-L-5 | Tablice w C# | 2 |
T-L-6 | Łańcuche znakowe | 2 |
T-L-7 | Techniki posługiwania się metodami i klasami w C# | 2 |
T-L-8 | Przeciążanie operatorów i metod | 2 |
T-L-9 | Dziedziczenie klas | 2 |
T-L-10 | Właściwości i indeksatory | 2 |
T-L-11 | Metody wirtualne, klasy i metody abstrakcyjne | 2 |
T-L-12 | Delegaty | 2 |
T-L-13 | Zdarzenia | 2 |
T-L-14 | Przestrzenie nazw | 2 |
T-L-15 | Niebezpieczny kod w C#, wskaźniki | 2 |
T-L-16 | Typy generyczne (część I) | 2 |
T-L-17 | Typy generyczne (część II) | 2 |
T-L-18 | Dynamiczne rozpoznawanie typów | 2 |
T-L-19 | Refleksja typó, atrybuty | 2 |
T-L-20 | Technologia LINQ dostępu do źródeł danych (część I)) | 2 |
T-L-21 | Zaawanssowane techniki w technologii LINQ (część II)) | 2 |
T-L-22 | Biblioteka klas podstawowych C# | 3 |
45 | ||
wykłady | ||
T-W-1 | Cechy platformy programowania Microsoft.NET. Struktura kodów w C#. | 2 |
T-W-2 | Typy danych, literały i zmienne języka C#. Operatory języka C#, przeciążanie operatorów. Tworzenie klas, obiektów i metod. | 2 |
T-W-3 | Tablice i łańcuchi znakowe | 2 |
T-W-4 | Indeksatory i właściwości. Interfejsy, struktury i przeliczenia. | 2 |
T-W-5 | Dziedziczenie, hierarchia klas, metody wirtualne, klasy abstrakcyjne, zaawansowane techniki operacji z metodami i klasami. | 2 |
T-W-6 | Wyjątki, delegaty i zdarzenia | 2 |
T-W-7 | Przestrzenie nazewnictwa, preprocesor języka C#, pliki konfiguracyjne | 2 |
T-W-8 | Dynamiczna identyfikacja typów | 1 |
15 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | Uczestnictwo w zajęciach | 45 |
A-L-2 | Przygotowanie do zajęć laboratoryjnych i napisanie sprawozdań | 28 |
A-L-3 | Uczestnictwo w konsultacjach | 2 |
75 | ||
wykłady | ||
A-W-1 | Uczestnictwo w zajęciach | 15 |
A-W-2 | Studiia literatury | 4 |
A-W-3 | Przygotowanie do zaliczenia | 4 |
A-W-4 | Uczestnictwo w konsultacjach | 2 |
25 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykłady / slajdy |
M-2 | Wykonanie zadań laboratoryjnych / konspekt przygotowany przez wykładowcę. |
M-3 | Samodzielna znajomość niektórych tematów z danego przedmiotu / żródła literackie proponowane przez wykładowcę. |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: Sprawozdania z wykonanych zadań laboratoryjnych. |
S-2 | Ocena formująca: Odpowiedzi na pytania na zaliczeniu pismowym. |
Zamierzone efekty uczenia się - wiedza
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
I_1A_C09.3_W01 Tworzy i opisuje projekt programu w terminach zasobów C# (klas, obiektów, delegatów, indeksatorów, interfejsów itd.), wybiera metody z biblioteki klas podstawowych C# dla realizacji projektu, tworzy kod w C#, zna strukturę platformy programowania komponentowego .NET Framework i skutecznie korzysta z funkcjonalności tej platformy. | I_1A_W04, I_1A_W02 | — | — | C-1, C-2, C-3 | T-W-1, T-W-5, T-W-3, T-W-2, T-W-4, T-W-6, T-W-7, T-W-8 | M-1, M-2, M-3 | S-1, S-2 |
Zamierzone efekty uczenia się - umiejętności
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
I_1A_C09.3_U01 Analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykłądach; skutecznie korzysta z debugera i systemu wyjątków do wyjawienia błędów w kodzie; strukturyzuje projekt programu w postaci klas i obiektów; realizuje projekt programu w języku C# na podstawie sformulowanego zadania. | I_1A_U06, I_1A_U09 | — | — | C-2, C-3 | T-L-16, T-L-1, T-L-2, T-L-4, T-L-3, T-L-5, T-L-6, T-L-7, T-L-8, T-L-9, T-L-10, T-L-11, T-L-12, T-L-13, T-L-14, T-L-15, T-L-17, T-L-18, T-L-19, T-L-20, T-L-21, T-L-22 | M-2, M-3 | S-1 |
Kryterium oceny - wiedza
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
I_1A_C09.3_W01 Tworzy i opisuje projekt programu w terminach zasobów C# (klas, obiektów, delegatów, indeksatorów, interfejsów itd.), wybiera metody z biblioteki klas podstawowych C# dla realizacji projektu, tworzy kod w C#, zna strukturę platformy programowania komponentowego .NET Framework i skutecznie korzysta z funkcjonalności tej platformy. | 2,0 | Student nie w stanie przeanalizować postawione zadanie, wybrać jeżykowe zasoby jego realizacji w postaci kodu w C# i napisać kod realizujcy te zadanie. |
3,0 | Student może opisać projekt w terminach zasobów C# (klas, obiektów, komponentów itd.), może napisać proste kody, ale słabo się orientuje w zaawansowanych metodach tworzenia kodów (wykorzystanie klas biblioteki podstawowej C#, debugowanie kodów, obsługiwanie wyjątków itd.). | |
3,5 | Student może opisać projekt programu w terminach zasobów C# (klas, obiektów, komponentów itd.), może wybrać zasoby języka C# do realizacji projektu programu i tworzy proste kody w C#, ale ma trudności w ocenie optymalności proponowanego przez niego rozwiązania i słabo zna możliwości biblioteki podsatwowej C#. | |
4,0 | Student może opisać projekt programu w terminach zasobów C# (klas, obiektów, komponentów itd.), wybiera zasoby języka C# do realizacji projektu programu, tworzy kod programu w C#, posługiwując się standardowymi zasobami języka C# do realizacji programu, ale napotyka się na trudności co do posługiwania się zaawansowanymi zasobami języka C# do realizacji optymalnego i skutecznego kodu. | |
4,5 | Student opisuje projekt programu w terminach zasobów C# (klas, obiektów, komponentów itd.), wybiera skuteczne zasoby języka C# do realizacji projektu programu, tworzy kod programu w C#, skutecznie posługiwuje się standardowymi zasobami języka C# do realizacji programu, a także zaawansowanymi zasobami przedstawionymi w Bibliotece klas podstawowych środowiska Visual Studio, ale slabo zna ogólną strukturę platformy programowania komponentowego .NET Framework. | |
5,0 | Student opisuje projekt programu w terminach zasobów C# (klas, obiektów, komponentów itd.), wybiera skuteczne zasoby języka C# do realizacji projektu programu, tworzy kod programu w C#, skutecznie posługiwuje się standardowymi zasobami języka C# do realizacji programu, a także zaawansowanymi zasobami przedstawionymi w Bibliotece klas podstawowych środowiska Visual Studio, zna strukturę platformy programowania komponentowego .NET Framewoek i skutecznie korzysta z funkcjonalności tej platformy. |
Kryterium oceny - umiejętności
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
I_1A_C09.3_U01 Analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykłądach; skutecznie korzysta z debugera i systemu wyjątków do wyjawienia błędów w kodzie; strukturyzuje projekt programu w postaci klas i obiektów; realizuje projekt programu w języku C# na podstawie sformulowanego zadania. | 2,0 | Student nie w stanie przeanalizować postawione zadanie, wybrać jeżykowe zasoby jego realizacji w postaci kodu w C# i napisać kod realizujcy te zadanie. |
3,0 | Student może przeanalizować poprawność działania tworzonego kodu w C# oraz weryfikać wyniki działania kodu na testowych przykładach, ale napotyka się na trudności formułuwania zadania na projekt programu w języku C# w kategoriach klas i obiektów, a także ma trudności z oceną optymalności wykorzystania standardowych i zaawansowanych zasobów języka C#. | |
3,5 | Student analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykładach, formułuje zadanie na projekt programu w języku C# na podstawie określonego przez eksperta problemu, ale ma trudności z oceną poprawności strukturyzacji programu w postaci klas i obiektów i modyfikacji programu do rozwiązania konkretnych problemów. | |
4,0 | Student analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykładach, formułuje zadanie na projekt programu w języku C# na podstawie określonego przez eksperta problemu, opracowuje projekt programu w języku C# na podstawie sformulowanego zadania, strukturyzuje projekt programu w postaci klas i obiektów/ ale ma trudności z modyfikacją kodu i jego optymalizacją w crlu przystosowania programu do rozwiązania poszczególnych problemów. | |
4,5 | Student analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykładach, formułuje zadanie na projekt programu w języku C# na podstawie określonego przez eksperta problemu, opracowuje projekt programu w języku C# na podstawie sformulowanego zadania, strukturyzuje projekt programu w postaci klas i obiektów, modyfikuje kod w celu jego optymalizacji (w razie potrzeby), ale napotyka się na trudności posługiwania się zaawansowanymi technikami programowania wC#, w tym Biblioteką klas standardowych środowiska .NET Framework. | |
5,0 | Student analizuje poprawność działania tworzonego kodu w C# oraz weryfikuje wyniki działania kodu na testowych przykładach, formułuje zadanie na projekt programu w języku C# na podstawie określonego przez niego lub innego eksperta problemu, opracowuje projekt programu w języku C# na podstawie sformulowanego zadania, strukturyzuje projekt programu w postaci klas i obiektów, modyfikuje kod w celu jego optymalizacji (w razie potrzeby), posługiwując się w razie potrzeby zaawansowanymi technikami programowania wC#, w tym Biblioteką klas standardowych środowiska .NET Framework. |
Literatura podstawowa
- John Sharp, C# 2010. Krok po kroku, Edycja Polska Microsoft Press, Warszawa, 2010
- Stephen C.Perry, C# i .NET, Helion, Gliwice, 2006
- Klaus Michelsen, Szkoła programowania. Język C#, Helion, Gliwice, 2007
Literatura dodatkowa
- Jesse Liberty, Brian McDonalds, Wprowadzenie do C# 2005, Helion, Gliwice, 2006
- Andrew Troelsen, Język C# i platforma .NET, MIKOM, Warszawa, 2006