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):

  1. 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,
  2. Omówienie przykładowych metod programowania funkcyjnego przykładzie wybranego języka funkcyjnego (OCaml, Scala lub Python),
  3. 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,
  4. Pokazanie mechanizmów (lub algorytmów) zastosowanych w przykładowych narzędziach,
  5. 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,
  6. 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),
  7. 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).