logo of the SSW institute ;)
Computer Science
System Software

Home

General
Staff
Contact
Partners
Alumni

Research
Areas
Projects
Papers
Books
Reports
Awards

Teaching
Lectures
Exams
B.Projects
M.Theses
PhD Theses
Go Abroad

Misc
Talks
Library
Gallery
Links
Search

Webmaster


Spezielle Kapitel in Software Engineering:

Objekt-Funktionale Programmierung

339.343 2KV Prähofer Block Raum: S3 057 Beginn:

Informationen

  1. Beginn der LVA Fr. 6. 10. 2017

Ziele

Eine neues Programmierparadigma, das in letzter Zeit viel Beachtung gefunden hat, stellt die sogenannte objekt-funktionale Programmierung dar. Wie der Name andeutet, handelt es sich dabei um eine Integration des objekt-orientierten und funktionalen Paradigmas. Die derzeit bekanntesten objekt-funktionalen Sprachen sind Scala, F#, Kotlin oder Rust.

In dieser Lehrveranstaltung wird eine Einführung in die objekt-funktionale Programmierung gegeben. Der Schwerpunkt liegt auf der Sprache Scala. Zusätzlich wird die Sprachen F# und Rust näher behandelt.

Der Stoff der LVA wird mit begleitenden Programmieraufgaben praktisch geübt.

Die Lehrveranstaltung wird in Deutsch abgehalten.

Inhalt

  • Scala
    • Einführung
    • Funktionen und Funktionsobjekte
    • Objektorientierte Programmierung
    • Pattern Matching
    • Erweiterbarkeit und DSLs
    • Reaktive Programmierung
  • F#
  • Rust

Prüfung und Benotung

Wesentlich für den positiven Abschluss der LVA ist die Ausarbeitung von praktischen Übungen/Projekt. Es gibt 2 Varianten für den praktische Teil:

  • Ausgegebene Übungen 1 bis 4 plus ein kleineres Beispiel nach Wahl; als Anhaltspunkt ca. 2 Seiten Code pro Übung, d.h., insgesamt ~ 10 Programmseiten.
  • Projekt mit ungefähr gleichem Umfang wie die Übungen; vorwiegend unter Verwendung einer bestimmten Technologie, z.B. RxScala, Akka, Play Framework. Auch ein Projekt in Rust oder F# ist möglich.

Abschluss der LVA mit Präsentation der Ausarbeitungen und mündlicher Prüfung. Es gibt zwei Termine für Präsentation der Ergebnisse:

  • Fr. 19. 1. 2018
  • Fr. 2. 3. 2018
Am Anfang der Woche mit dem Termin werde ich einen Doodle-Poll ausschicken. Sie können darin dann einen Zeitpunkt wählen.

Skript

Folienskript und Begleitmaterial; Im KUSSS finden Sie einen Link zu einem Google Drive Folder mit dem Material zur LVA.

Literatur

  • M. Odersky, L. Spoon, B. Venners: Programming in Scala, Third edition. artima, 2016
  • D. Wampler, A. Payne: Programming Scala. O.Reilly, 2009
  • D. Syme et al.: Expert F#. Apress, 2007
  • C. Smith: Programming F#. O.Reilly, 2010

Online-Quellen