How does software architecture work with functions, immutable data, combinators?
The training presents functional software architecture to the participants as an alternative to object-oriented architecture. Compared to OO architecture, functional software architecture relies on immutable data, algebraic abstractions and embedded domain-specific languages. The result is flexible and robust architectures that are less complex than OO and involve fewer hidden dependencies.
In functional languages, architecture is code – due to their increased expressiveness and abstraction capabilities. In the training, participants will work on hands-on exercises (in Haskell).
On the first day of the seminar there will be a compact introduction to functional programming for course participants who have no experience with FP – or a short refresher for those who do. There will be mainly hands-on exercises with practical programming will be done. The special teaching languages and the proven didactic methodology of the „DeinProgram“ design recipes will be used.
As preparation for the iSAQB Certified Professional for Software Architecture, Advanced Level (CPSA-A).
The seminar covers the areas „Methodological Competence“ as well as „Technical Competence“ of the CPSA-Advanced curriculum and is licensed accordingly at the iSAQB. If you are seeking certification, you can earn 10 credit points in the area of „Methodological Competence“ and 20 credit points in the area of „Technical Competence“ by attending. Information on CPSA certification can be found here.
Lecturer Dr. Michael Sperber is a co-author of the FUNAR curriculum.
Day 1: Introduction to functional programming
Day 2-4: Structure of functional software systems
Technologies for functional programming
Implementation of functional requirements
Implementation of non-functional requirements
Experience with functional programming is helpful, but not required.