Software Design

Programming Concepts

Tutorial, 5.00 ECTS


Course content

Introduction to several programming concepts, especially compiler
and linker compared to interpreters, dynamic vs. static
programming languages, memory management including pointer
arithmetics, automation with scripts (including pattern matching
and regular expressions); several aspects of functional and parallel computing
(multithreading topics).

Learning outcomes

On completion of the course, students have fundamental knowledge about code generator development as well as the various paradigms used in programming languages.

Recommended or required reading and other learning resources / tools

Thomas Stahl and Markus Völter, Model-Driven Software Development 2006
Martin Fowler, Domain Specific Languages, 2011

Alan A. A. Donovan and Brian W. Kernighan, The Go Programming Language, Addison-Wesley Professional, 2015
Steven Lott, Functional Python Programming, Packt Publishing Ltd, 31 Jan 2015
Professional Journals: ACM, IEEE

Mode of delivery

5 ECTS Tutorial

Prerequisites and co-requisites

Software Engineering 4

Assessment methods and criteria

Continuous Assessment