wydział budowy maszyn i informatyki
Transkrypt
wydział budowy maszyn i informatyki
AKADEMIA TECHNICZNO HUMANISTYCZNA WYDZIAŁ BUDOWY MASZYN I INFORMATYKI KARTA PROGRAMOWA - Sylabus - Przedmiot: Programowanie II Kod przedmiotu: IDI_C.6.1_3 Rok studiów: 2 Semestr: 3 Kierunek: Informatyka Studium: stacjonarne i niestacjonarne I stopnia (inżynierskie) Specjalność: Sposób zaliczenia przedmiotu: egzamin Punkty ECTS: ok. 7 Odpowiedzialny: dr inż. Mirosław Kordos Jednostka organizacyjna prowadząca przedmiot: K-11 Prowadzący zajęcia: dr inż. Mirosław Kordos, mgr inż. Szymon Tengler Wykłady: - 30 godz. Ćwiczenia laboratoryjne: - 45 godz. ZAŁOŻENIA I CELE PRZEDMIOTU Wykłady: Tematyka wykładów ma na celu zapoznanie studentów z podstawowymi zagadnieniami dotyczącymi programowania nowoczesnym języku obiektowym na przykładzie języka C#. składnia języka C#, typy danych, struktury, obiekty, kolekcje, klasy i inne konstrukcję języka C#. W trakcie wykładów stopniowo przedstawiane są zasady programowania, podstawowe konstrukcje programistyczne oraz implementacje algorytmów w języku C#. Ćwiczenia laboratoryjne: Celem zajęć laboratoryjnych jest praktyczne zastosowanie omawianych na wykładach zagadnień i konstrukcji, podczas tworzenia własnych programów w języku C#. W ramach zajęć należy wykazać się umiejętnością samodzielnego pisania prostych programów z użyciem poznanych konstrukcji oraz ich doboru stosownie do przeznaczenia poszczególnych części programu. Przedmioty wprowadzające: Programowanie I Literatura podstawowa: 1. http://www.csharp-station.com 2. http://www.centrumxp.pl/dotNet Literatura uzupełniająca: 1. 2. 3. 4. 5. Jesse Liberty, „C# : programowanie”, Helion, 2006 Allen Jones, „C# : księga przykładów”, APN Promise, 2005 Marcin Lis, „C# : ćwiczenia”, Helion, 2006 http://msdn.microsoft.com http://www.c-sharpcorner.com IDI_C.6.1_3 TREŚCI PROGRAMOWE Liczba godzin TEMATYKA ZAJĘĆ (Tematyka wykładów) 1. 2. 3. 4. Wykłady 5. 6. 7. 8. 9. 10. 11. 12. 13. Zasady programowania. Podstawowe konstrukcje programistyczne. Funkcja Main(). Wejście i wyjście konsolowe. Typy i zmienne (integer, double, bool, char, string, decimal). Domyślna inicjalizacja zmiennych. Konwersja i rzutowanie typów. Instrukcje warunkowe i sterujące: if, for, while, switch. Tablice. Deklaracje i inicjalizacje tablic dynamicznych. Kopiowanie tablic. Parametry przekazywane z linii komend. Dynamiczny przydział pamięci. Funkcje. Przekazywanie parametrów przez wartość i referencje, parametry z nazwami i domyślne. Przekazywanie tablic jako argumentu funkcji. Przeciążanie funkcji. Rekurencja. Zasady programowania obiektowego. Obiekty, klasy i struktury. Pola prywatne i publiczne. Obiekty i klasy. Properties, pola statyczne, konstruktory parametrowe. Klasy zagnieżdżone, klasy z atrybutem partial. Projektowanie i implementacji programów obiektowych. Extensions methods, przeciążanie operatorów. Dziedziczenie: interfejsy, klasy abstrakcyjne, metody wirtualne. Przeciążanie elementów klasy bazowej. Pliki. Operacje zapisu i odczytu na plikach tekstowych. Obsługa wyjątków. Kolekcje i typy generyczne: List, Dictionary, HashTable, Queue, Tuple i inne. Iterowanie elementów kolekcji. Struktury danych: stos, lista, kolejka i inne oraz wykonywane na nich operacje. Stos i sterta. Boxing i unboxing. Grafika GDI – rysowanie i zapis do plików graficznych. Programowanie wielowątkowe. Thread, BackgroundWorker, klasa Parallel. Kod niezarządzalny i wskaźniki. Zmienne typu string i operacje na nich. StringBuilder. Wyrażenia regularne. 2 Razem 30 2 2 2 2 2 2 2 6 2 2 2 2 2 Warunkiem zaliczenia wykładów jest: zdanie egzaminu IDI_C.6.1_3 Liczba godzin TEMATYKA ZAJĘĆ Ćwiczenia laboratoryjne (Tematyka ćwiczeń laboratoryjnych) 1. Podstawowe konstrukcje programistyczne. Funkcja Main(). Wejście i wyjście konsolowe. Typy i zmienne (integer, double, bool, char, string, decimal). Domyślna inicjalizacja zmiennych. Konwersja i rzutowanie typów. 2. Instrukcje warunkowe i sterujące: if, for, while, switch. 3. Tablice. Deklaracje i inicjalizacje tablic dynamicznych. Kopiowanie tablic. Parametry przekazywane z linii komend. Dynamiczny przydział pamięci. 4. Funkcje. Przekazywanie parametrów przez wartość i referencje, parametry z nazwami i domyślne. Przekazywanie tablic jako argumentu funkcji. Przeciążanie funkcji. Rekurencja. 5. Zasady programowania obiektowego. Obiekty, klasy i struktury. Pola prywatne i publiczne. 6. Obiekty i klasy. Properties, pola statyczne, konstruktory parametrowe. Klasy zagnieżdżone, klasy z atrybutem partial. Projektowanie i implementacji programów obiektowych. Extensions methods, przeciążanie operatorów. 7. Dziedziczenie: interfejsy, klasy abstrakcyjne, metody wirtualne. Przeciążanie elementów klasy bazowej. 8. Pliki. Operacje zapisu i odczytu na plikach tekstowych. Obsługa wyjątków. 9. Kolekcje i typy generyczne: List, Dictionary, HashTable, Queue, Tuple i inne. Iterowanie elementów kolekcji. Struktury danych: stos, lista, kolejka i inne oraz wykonywane na nich operacje. Stos i sterta. Boxing i unboxing. 10. Grafika GDI – rysowanie i zapis do plików graficznych. 11. Programowanie wielowątkowe. Thread, BackgroundWorker, klasa Parallel. 12. Kod niezarządzalny i wskaźniki. 13. Zmienne typu string i operacje na nich. StringBuilder. Wyrażenia regularne. 3 Razem 45 3 3 3 3 3 3 3 9 3 3 3 Warunkiem zaliczenia ćwiczeń laboratoryjnych jest: zaliczenie kolokwium (na 5.0 dodatkowo projekt) IDI_C.6.1_3