Kurs komputerowy - Python 2
Informacje ogólne
Kod przedmiotu: | 0800-KK-PYTH2 |
Kod Erasmus / ISCED: |
(brak danych)
/
(0613) Tworzenie i analiza oprogramowania i aplikacji
|
Nazwa przedmiotu: | Kurs komputerowy - Python 2 |
Jednostka: | Wydział Fizyki, Astronomii i Informatyki Stosowanej |
Grupy: |
Kursy komputerowe dla Fizyki Technicznej s2 Przedmioty do wyboru dla Informatyki Stosowanej s1 |
Punkty ECTS i inne: |
2.00
|
Język prowadzenia: | polski |
Wymagania wstępne: | Kurs Python 1, i.e.: 1. Typy wbudowane 2. Niesekwencyjne typy iterowalne (zakres, plik, kursor bazy danych) 3. Listy składane, narzędzia programowania funkcyjnego (map, filter), funkcje anonimowe 4. Klasy, dziedziczenie, przysłanianie metod, przeciążanie operatorów 5. Programy wielowątkowe, blokady, kolejki 6. Programowanie sieciowe na poziomie gniazd 7. Podstawy obliczeń numerycznych z modułami numpy, scipy, pyplot |
Całkowity nakład pracy studenta: | 60 godzin: 30 godzin zajęć 30 godzin pracy własnej i przygotowania do testu końcowego |
Efekty uczenia się - wiedza: | 1. Teoria iteratorów i koprocedur oraz ich implementacji przez generatory. Mechanizmy komunikacji pomiędzy koprocedurą a programem głównym. 2. Znajomość wzorców współbieżności: mikrowątki, wątki podprocesy oraz nieblokujących operacji we/wy. 3. Dogłębna znajomość struktury języka: metod specjalnych klas, mechanizmów dziedziczenia, teorię funkcji pamiętających stan, domknięć funkcji i klas wykonywalnych. 4. Mechanizmy kontroli dostępu do atrybutów w klasach, dynamicznie generowane atrybuty, deskryptory, metody klas i metody statyczne. 5. Synchronizacja podprocesów w zrównoleglonych obliczeniach numerycznych. Realizuje efekty: K_W03, K_W05, K_W07 dla FT i K_W01, K_W10 dla IS |
Efekty uczenia się - umiejętności: | 1. Umiejętność tworzenia i używania iteratorów 2. Umiejętność tworzenia mikrowątków przez koprocedury, komunikacji z koprocedurami, używania nieblokujących operacji wejścia/wyjścia 3. Umiejętność zaawansowanego programowania obiektowego i introspekcji. 4. Umiejętność zarządzania atrybutami w klasach 5. Umiejętność zrównoleglania obliczeń za pomocą podprocesów i sunchronizacji podprocesów. Realizuje efekty: K_U06 dla FT i K_U01, KU_09, KU_10, KU_13, KU_22 dla IS |
Efekty uczenia się - kompetencje społeczne: | Brak |
Metody dydaktyczne: | Pracownia komputerowa - podawanie treści z jednoczesnym ich programowaniem przez studentów pod nadzorem |
Metody dydaktyczne poszukujące: | - ćwiczeniowa |
Skrócony opis: |
1. Iteratory i generatory, moduł itertools, koprocedury, mikrowątki, nieblokujące operacje wejścia-wyjścia 2. Programowanie funkcyjne, moduł functools, funkcje pamiętające stan, domknięcia funkcji, klasy wykonywalne 3. Dekoratory funkcji i klas 4. Menedżery kontekstu 5. Zaawansowane zagadnienia klas: - metody statyczne i metody klas - atrybuty pseudoprywatne - metody __getattr__ / __getattribute__, dynamicznie generowane atrybuty, emulacja pseudoprywatności - __slots__ - kontrola dostępności nazw - deskryptory i właściwości 6. Moduł multiprocessing - programowanie równoległe, komunikacja między procesami, synchronizacja. 7. Problemy numeryczne w numpy / scipy |
Pełny opis: |
1. Iteratory i generatory, moduł itertools, koprocedury, mikrowątki, nieblokujące operacje wejścia-wyjścia 2. Programowanie funkcyjne, moduł functools, funkcje pamiętające stan, domknięcia funkcji, klasy wykonywalne 3. Dekoratory funkcji i klas 4. Menedżery kontekstu 5. Zaawansowane zagadnienia klas: - metody statyczne i metody klas - atrybuty pseudoprywatne - metody __getattr__ / __getattribute__, dynamicznie generowane atrybuty, emulacja pseudoprywatności - __slots__ - kontrola dostępności nazw - deskryptory i właściwości 6. Moduł multiprocessing - programowanie równoległe, komunikacja między procesami, synchronizacja. 7. Problemy numeryczne w numpy / scipy |
Literatura: |
http://pl.wikibooks.org/wiki/Zanurkuj_w_Pythonie https://docs.python.org/2/ https://docs.python.org/3/ Mark Lutz: Python David Beazley, Brian K. Jones: Python receptury Gniewomir Sarbicki: Python. Kurs dla nauczycieli i studentów |
Metody i kryteria oceniania: |
Kolokwium końcowe 33% - 50% - ocena: 3 50% - 67% - ocena: 3+ 67% - 83% - ocena: 4 83% - 100% - ocena: 4+ 100% - ocena: 5 W przypadku epidemii - oceny na podstawie projektów zaliczeniowych związanych z zagadnieniami kursu i przygotowanych jako tutoriale - statyczne strony html. |
Zajęcia w cyklu "Semestr letni 2021/22" (zakończony)
Okres: | 2022-02-21 - 2022-09-30 |
Przejdź do planu
PN WT ŚR CZ PT LAB
|
Typ zajęć: |
Laboratorium, 30 godzin
|
|
Koordynatorzy: | Gniewomir Sarbicki | |
Prowadzący grup: | Gniewomir Sarbicki | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę |
Zajęcia w cyklu "Semestr letni 2023/24" (w trakcie)
Okres: | 2024-02-20 - 2024-09-30 |
Przejdź do planu
PN LAB
WT ŚR CZ PT |
Typ zajęć: |
Laboratorium, 30 godzin
|
|
Koordynatorzy: | Gniewomir Sarbicki | |
Prowadzący grup: | Gniewomir Sarbicki | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę |
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.