Low level programming

One might ask - how is low level programming any relevant when everyone is developing software (especially graphical user interfaces) with the help of high level programming environments (e.g. the web) and GUI toolkits (e.g. React). Due to the growing complexity of implementing all the requirements of a modern user interface, developing a new user interface framework is a major undertaking, and commercially not a viable option even if the existing frameworks present technical challenges.

Our primary goal is to shed some light on the underlying principles, to get a better grasp on the core issues and mechanisms on different abstraction levels in the framework. Modern frameworks, especially retained mode toolkits like JavaFX, contain a significant amount of functionality for encapsulating controls and for managing the scene without sacrificing performance.

Lecture slides

lecture slides