Programowanie w językach skryptowych

advertisement
Kod:
Nazwa przedmiotu
00 00 0000 00
Liczba punktów ECTS:
0
Programowanie w językach skryptowych
Nazwa w języku
angielskim
Język prowadzenia
zajęć
polski
Kierunek studiów
Informatyka
Poziom studiów
studia II stopnia magisterskie
Jednostka
prowadząca
WEEIA - Instytut Informatyki Stosowanej I-24
Kierownik
i realizatorzy
Formy zajęć i liczba
godzin w semestrze
Grabowski Szymon, dr hab.
Bieniecki Wojciech, dr inż.
Wyk.
Ćw.
Lab.
Proj.
Sem.
Inne
15
0
30
0
0
0
Suma godzin
w se estrze
45
Efekty kształcenia
Celem przedmiotu jest zapoznanie studentów z koncepcjami programowania w językach
skryptowych i ich wybranymi obszarami zastosowań
Efekty kształcenia:
Poznanie nowoczesnych, obiektowych języków skryptowych.
Zastosowanie struktur danych do przetwarzania danych tekstowych.
Zastosowanie skryptów w technologiach internetowych.
Programowanie rozproszone, sieciowe, równoległe w językach skryptowych
Wymagania
wstępne
Algorytmy i struktury danych, Metody i języki programowania, Systemy operacyjne, Sieci
komputerowe.
Organizacja
przedmiotu i treści
kształcenia
WYKŁAD
1. Języki statyczne a języki dynamiczne. Specyfika języków skryptowych.
2. PYTHON: podstawy składni, wbudowane typy danych (string, lista, krotka, słownik,
zbiory i in.). Zakresy i iteracje. Obsługa plików. Tworzenie funkcji (domyślne i nazwane
wartości argumentów, funkcje zwracające wiele wartości itd.). Tworzenie własnych
modułów. Wykrywanie i obsługa błędów. Programowanie obiektowe w Pythonie.
Serializacja. Elementy programowania funkcyjnego w Pythonie. Przegląd wybranych
modułów standardowych. Obsługa wyrażeń regularnych. Podstawy programowania
sieciowego w Pythonie. Wybrane zewnętrzne biblioteki: Python Image Library (PIL),
PyGame. Wstęp do programowania interfejsów graficznych z wykorzystaniem
środowiska wxPython. Python a bazy danych. Rozważania nad kwestiami wydajności.
Wybrane techniki optymalizacji kodu w Pythonie. Pomiar czasu.
3. RUBY: Elementy programowania strukturalnego i obiektowego. Programowanie
modułowe. Operacje wejścia i wyjścia. Programowanie wielowątkowe. Testy. Powłoka
interaktywna. Programowanie sieciowe. Programowanie dynamiczne.
4. REBOL. Pojęcie bloku. Funkcje wbudowane. Tworzenie GUI. Obsługa zdarzeń.
Rysowanie w 2D, proste animacje. Obsługa danych binarnych, praca z wybranymi
protokołami obsługiwanymi natywnie. Programowanie sieciowe. XML-RPC. Współpraca z
MySQL. Tworzenie dialektów.
ĆWICZENIA LABORATORYJNE
1. Zapoznanie się z podstawami składni i wbudowanymi typami danych w Pythonie.
2. Przetwarzanie tekstu w Pythonie. Obsługa plików.
3. Ćwiczenia z wybranymi modułami Pythona.
4. Obiektowość w Pythonie.
5. Podstawy programowania wielowątkowego.
6. Biblioteki PIL i PyGame.
7. Tworzenie GUI przy pomocy wxPython.
8. Komunikacja z bazą danych.
9. Mechanizmy obiektowości w języku Ruby.
10. Przegląd wybranych bibliotek języka Ruby.
11. Tworzenie GUI i obsługa zdarzeń w REBOL-u.
12. Obsługa wybranych protokołów sieciowych.
Forma zaliczenia sprawdzenia
osiągnięcia efektów
kształcenia
Kolokwium wykładowe (40% oceny końcowej) oraz średnia z oceny 5 zadań
laboratoryjnych (60% oceny końcowej).
Literatura
podstawowa
Thomas D., Foowler C., Hunt A.: Programowanie w języku Ruby. Helion, 2006.
Peter C. Norton et al.: Python. Od podstaw. Helion, 2006.
Martelli A., Ravenscroft A., Aster D.: Python. Receptury. O'Reilly, 2006.
Peter C. Norton et al.: Python. Od podstaw. Helion, 2006.
http://www.plain.at/vpavlu/REBOL/tutorial/
Goldman E., Blanton J.: Rebol: The Official Guide. Rebol Press, 2000.
Literatura
uzupełniająca
Przeciętne
obciążenie studenta
pracą własną
55
Uwagi
Uwagi
Aktualizacja
Data
Całkowite obciążenie
studenta pracą
100
Download