Zagadnienia organizacyjne¶
mgr inż. Konrad Siek <imię.nazwisko@cs.put.edu.pl>
W przypadku kontaktu mejlowego prefiks [MBP]
w temacie wiadomości ułatwia
mi życie.
Informacje kontaktowe i dot. dyżurów: Contact Information.
Cele bloku FP @MBP¶
Syllabus:
Cel przedmiotu (syllabus):
- Przekazanie studentom podstawowej wiedzy w zakresie współczesnych metod, języków i narzędzi bezpiecznego programowania (ang. safe programming), to jest takich, które gwarantują programowanie wolne od określonej klasy błędów programistycznych,
- Omówienie przykładowych metod programowania funkcyjnego przykładzie wybranego języka funkcyjnego (OCaml, Scala lub Python),
- Omówienie przykładowych metod i narzędzi bezpiecznego programowania systemów współbieżnych i rozproszonych, ze szczególnym uwzględnieniem pamięci transakcyjnej oraz technik programowania funkcyjnego,
- Pokazanie mechanizmów (lub algorytmów) zastosowanych w przykładowych narzędziach,
- Omówienie podstawowych własności poprawności programów współbieżnych, które mają zastosowanie w kontekście omawianych metod i narzędzi bezpiecznego programowania systemów współbieżnych,
- Rozwijanie u studentów umiejętności wnioskowania na temat poprawności programów współbieżnych używając zarówno tradycyjnych metod jak i najnowszych metod (na przykładach programów poprawnych i błędnych),
- Kształtowanie u studentów umiejętności pracy zespołowej przez seminaryjny charakter niektórych zajęć, z naciskiem na dyskusję i wspólne wypracowywanie wniosków.
Elementy laboratorium:
- Podstawy języka Scala
- Aspekty programowania funkcyjnego z przykładami w Scali i Pythonie
- Rozwiązywanie problemów za pomocą technik programowania funkcyjnego
Zaliczenie¶
Warunki konieczne do otrzymania zaliczenia bloku FP:
- Obecność na zajęciach.
- Wykonanie zadań sprawdzających.
- Wykonanie indywidualnego projektu zaliczeniowego.
Jakość wykonania zadań i projektu zaliczeniowego (niska, dobra, lub przekraczająca wymagania) jest brana pod uwagę przy wystawianiu oceny z całości laboratorium.
Zagadnienia z bloku FP są uwzględnione w kolokwium zaliczeniowym.
Kod źródłowy zadań zaliczeniowych¶
Kod źródłowy zadań związnych z przedmiotem powinien być udostępniony wykładowcy
przez repozytorium grupy systemów rozproszonych. Każdy student proszony jest o
utworzenie osobnego projektu dla przedmiotu, gdzie kolejne katalogi będą
odpowiadały zadaniom do wykonania. Projekt przynależy do grupy MBP2014
.
Wykładowca powinien otrzymać dostęp z uprawnieniami Developer
(cel:
nanoszenie uwag).