Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Języki skryptowe
Tok studiów:
2019/2020
Kod:
ZIIE-1-202-n
Wydział:
Zarządzania
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Informatyka i Ekonometria
Semestr:
2
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Niestacjonarne
Strona www:
 
Prowadzący moduł:
dr inż. Opiła Janusz (jmo@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Moduł jest zaawansowanym wprowadzeniem do programowania w języku Python w kontekście innych języków programowania, skryptowych i kompilowanych, takich jak Visual Basic czy C/C++.
W ramach modułu, poza podstawami syntaktyki, omawiane są zagadnienia projektowania bezpiecznych aplikacji, interfejsu graficznego (GUI, tkinter), środowisk deweloperskich (konsola Python’a, Geany, PyCharm, Anaconda, WinPython), czy instalacji (pip) i wykorzystania bibliotek (PyPI) jak NumPy/SciPy/numexpr czy PyGame.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Potrafi projektować i uruchamiać aplikacje w języku Python IIE1A_W04 Udział w dyskusji,
Wykonanie projektu
M_W002 Posiada wiedzę w zakresie bezpieczeństwa, jakości, i cyklu życia aplikacji w języku Python IIE1A_W06 Aktywność na zajęciach
Umiejętności: potrafi
M_U001 Potrafi projektować i uruchamiać aplikacje w języku Python IIE1A_U06 Aktywność na zajęciach
M_U002 Potrafi wykorzystać techniki programowania skryptowego do budowy narzędzi wspomagających zarządzanie IIE1A_U08, IIE1A_U05 Wykonanie projektu
Kompetencje społeczne: jest gotów do
M_K001 Potrafi współdziałać i pracować w grupie, także w środowisku międzynarodowym, przyjmując w niej różne role IIE1A_K01 Wykonanie projektu
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
16 8 0 0 8 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Potrafi projektować i uruchamiać aplikacje w języku Python + - - - - - - - - - -
M_W002 Posiada wiedzę w zakresie bezpieczeństwa, jakości, i cyklu życia aplikacji w języku Python + - - - - - - - - - -
Umiejętności
M_U001 Potrafi projektować i uruchamiać aplikacje w języku Python - - - + - - - - - - -
M_U002 Potrafi wykorzystać techniki programowania skryptowego do budowy narzędzi wspomagających zarządzanie - - - + - - - - - - -
Kompetencje społeczne
M_K001 Potrafi współdziałać i pracować w grupie, także w środowisku międzynarodowym, przyjmując w niej różne role - - - + - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 75 godz
Punkty ECTS za moduł 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 16 godz
Przygotowanie do zajęć 35 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 24 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (8h):

Przegląd języków skryptowych
- Podział języków na skryptowe i kompilowane
- Przegląd najważniejszych języków skryptowych
- Python. Historia Python’a. Python jako projekt OpenSource.
Podstawowe struktury i typy danych. Przykłady kodu.
Instrukcje sterujące. Przykłady kodu.
Funkcje, moduły, import modułów. Przykłady kodu.
Programowanie obiektowe, definiowanie klas, wyjątki,
Prosty interfejs graficzny (Tkinter), widżety, dostęp do elementów okna

Ćwiczenia projektowe (8h):

1-2. Omówienie i przydział projektów
3-5. Konsultacje projektów
6-8. Wygłoszenie referatów opisujących wykonanie projektów, dyskusje.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia projektowe: Studenci wykonują zadany projekt samodzielnie, bez większej ingerencji prowadzącego. Ma to wykształcić poczucie odpowiedzialności za pracę w grupie oraz odpowiedzialności za podejmowane decyzje.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Warunkiem zaliczenia zajęć jest przygotowanie projektu, tj. działającego programu w j.Python.
Procedura składa się z trzech etapów:
- deklaracji tematu projektu – zwrotnie określana jest maksymalna ocena za dany rodzaj programu,
- projektu pośredniego (prosty program) mający na celu sprawdzenie znajomości syntaktyki,
- projektu głównego, który wymaga ustnego zaliczenia ze znajomości kodu.

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia projektowe:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują prace praktyczne mające na celu uzyskanie kompetencji zakładanych przez syllabus. Ocenie podlega sposób wykonania projektu oraz efekt końcowy.
Sposób obliczania oceny końcowej:

Ocena końcowa wystawiana jest jako średnia ważona według reguły:
Aktywność podczas wykładów 10 % (max 0.5 pt)
Przygotowanie i wygłoszenie referatu z wykorzystaniem narzędzi FLOSS. 80%
Aktywny udział w dyskusji nad projektami i referatami 10%

Szczegóły warunków uzyskania zaliczenia zostaną doprecyzowane podczas pierwszych zajęć projektowych.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Nieobecność na zajęciach (za wyjątkiem przypadków przewidzianych w Regulaminie Studiów AGH) nie zwalnia z obowiązku przesłania: deklaracji projektu, projektu pośredniego i projektu głównego. Nie ma możliwości ani obowiązku “odrabiania” zajęć.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Ogólna znajomość zasad pracy z komputerem

Zalecana literatura i pomoce naukowe:

1.Dostępne zasoby sieciowe, witryna projektu Python: www.python.org
2.Van Laningham, Ivan. Tytuł Poznaj Python w 24 godziny / Ivan Van Laningham ; tł. Kamil Cendrowski. Warszawa : Infoland, 2001.
3.Python: receptury / [red. Alex Martelli, Anna Martelli Ravenscroft, David Ascher] ; tł. Wojciech Moch, Marek Pętlicki. Gliwice: Wydawnictwo Helion, 2006.
4.Python: od podstaw / Peter Norton [et al. ; tł. Rafał Jońca]. Gliwice : Helion, 2006.
URL:
https://tkdocs.com/tutorial/index.html
https://wiki.python.org/moin/TkInter
https://wiki.python.org/moin/CategoryPyGUI
https://docs.python.org/2/library/tkinter.html
http://effbot.org/tkinterbook/

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Prototyping of visualization styles of 3D scalar fields using POV-Ray rendering engine / J. OPIŁA // W: MIPRO 2015 [Dokument elektroniczny]: 38 International Convention on Information and Communication Technology, Electronics and Microelectronics: May 25-29, 2015, Opatija, Croatia, Rijeka: MIPRO, 2015.
ISBN: 978-953-233-083-0 ; e-ISBN: 978-953-233-084-7. — ISSN 1847-3946. — S. 328–333.

Visualization in a knowledge transfer process / Janusz OPIŁA // W: ENTRENOVA –
ENTerprise REseach inNOVAtion conference : 6–8 September 2018, Split, Croatia / ed. by Marin
Milković, [et al.]. — Zagreb : Sveučilišna tiskara, 2018. — (Book of abstracts of the
ENTRENOVA – Enterprise Research Innovation Conference ; ISSN 1849-7969 ; vol. 4 no. 1). —
S. 94. — Pełny tekst na CD-ROMie. – S. 485–493.

Visualization of computable scalar 3D field using cubic interpolation or kernel density estimation
function / J. OPIŁA, G. Opiła // W: MIPRO 2018 [Dokument elektroniczny] : 41st international
convention : May 21–25, 2018, Opatija, Croatia : proceedings / ed. by Karolj Skala. Croatian Society for Information and Communication Technology, Electronics and Microelectronics MIPRO, cop. 2018. — ISSN 1847-3946). — e-ISBN: 978-953-233-096-0, s. 211–216.

Informacje dodatkowe:

Ogólne warunki uczestnictwa i zaliczenia przedmiotu określa Regulamin Studiów.